Dataflow Modeling of Signal Processing and Communication SystemsOutlineNeeds for System-Level DesignNeeds for Embedded RealizationDataflow ModelsSynchronous Dataflow [Lee 1987]Synchronous Dataflow (SDF)Dataflow Models in Design ToolsSlide 9Homogeneous OperationsSlide 11Increasing Sampling RatePolyphase Filter Bank FormDecreasing Sampling RateSlide 15Slide 16Spectral Shaping for ConverterNoise-Shaped Feedback CodingSlide 19Communication SystemsSlide 21Quadrature Amplitude ModulationQuad. Amplitude DemodulationModeling of Points In-BetweenLimitations of SDFConclusionSlide 27Dataflow Modeling ofSignal Processing and Communication SystemsWireless Networking and Communications GroupJanuary 14, 2019Prof. Brian L. EvansGuest Lecture forEE 382V Embedded System Design and Modeling2OutlineIntroductionSignal processing system design needsSynchronous dataflowSignal processing building blocksFiltersRate changersSignal processing examplesCommunication system examplesConclusion23Needs for System-Level DesignSignal processing algorithmsMultirate processing: e.g. interpolationLocal feedback: e.g. IIR filtersIteration: e.g. decodingGraphical representationsBlock diagram syntax natural but staticDataflow semantics for signal processingSignal representationsBit, byte, integer, fixed-point, floating-pointComplex-valued versions of aboveVectors/matrices of scalar data typesDo not needrecursionOften iterativeBit error rate vs. Signal-to-noise ratio (Eb/No)44Needs for Embedded Realization Block-based and point-by-point processingRetarget simulation for embedded platformsProcessors (e.g. DSPs) and hardware (e.g. FPGAs)Cosimulation on desktop and embedded platformsStatic schedulingPrediction of resources (e.g. memory) at compile timeDSPs have limited on-chip memory (32-512 kB)FPGAs have limited on-board memory & logic blocksFloating-point to fixed-point conversion55Dataflow ModelsMatch data-intensive processingSignal processingCommunication systemsDefinitions [Lee]A token is a data value or data structureA signal is a sequence of tokensA node maps input tokens onto output tokensSet of firing rules specify when a node can fireA firing of a node consumes input tokens and produces output tokensA sequence of firings is a dataflow process66Synchronous Dataflow [Lee 1987]UntimedArcs: one-way first-in first-out (FIFO) queuesNodes: functional blocksSource nodes always enabledOthers enabled when enoughsamples are on all inputsNode executionConsumes same fixed number of samples on each input arcProduces same fixed number of tokens on each output arcConsumed data is dequeued from arcFlow of data through graph does not depend on data valuesA3B277Synchronous Dataflow (SDF)Delay of (n) samplesn samples initially in FIFO queueSystems are determinateExecution in sequence or parallelhas same outcome (predictable)Systems can be statically analyzedCheck for “sampling rate” consistencyDetermine/optimize FIFO queue sizes atcompile timeModels systems with rational rate changesA3B2(6) 23Nodes are not multirate but graph is!Periodic schedule fires A twice & B thrice, e.g. AABBB or ABABB88Dataflow Models in Design ToolsDesign Tool Dataflow Model(s) Example ApplicationsAgilent Advanced Design SystemSynchronous and Timed Synchronous DataflowMixed analog, digital, and RF communication systemsCoware Signal Proc. WorksystemSynchronous and Dynamic DataflowPeriodic digital systems, e.g. transceivers & MP3 decodersNational Instruments LabVIEWHomogeneous Dynamic Dataflow (G)Periodic and aperiodic digital systemsSynopsys CoCentric System Design StudioCyclostatic Dataflow Periodic digital systems, e.g. transceivers & mp3 decodersUC Berkeley Ptolemy ClassicSynchronous and Dynamic DataflowPeriodic and aperiodic digital systems9OutlineIntroductionSignal processing system design needsSynchronous dataflowSignal processing building blocksFiltersRate changersSignal processing examplesCommunication system examplesConclusion910Homogeneous OperationsPointwise arithmetic operations (addition, etc.)Delay by m samples property of SDF arcFinite impulseresponse filter0a1 11 11op0a1 11mz][kx1z][ky0a1Ma2Ma1a……1z1z10][ ][Mmmmkxaky11FIR11Homogeneous OperationsInfiniteimpulseresponsefilterx[k]y[k]y[k-M]x[k -1]x[k-2]b2b1b0UnitDelayUnitDelayUnitDelayx[k-N]bNFeed-forwarda1a2y[k -1]y[k-2]UnitDelayUnitDelayUnitDelayaMFeedbackMmmNnnmkyankxbky10][ ][ ][IIR1212Increasing Sampling RateUpsampling by L denoted as LOutputs input sample followed by L-1 zerosIncreases sampling rate by factor of LFinite impulse response (FIR) filter g[m]Fills in zero values generated by upsamplerMultiplies by zero most of time(L-1 out of every L times)Sometimes combined intorate changing FIR blockmOutput of Upsampler by 41 2 3 4 5 6 7 801 2Output of FIR Filter3 4 5 6 7 8m01 2Input to Upsampler by 4n0g[m ] 41411FIR141313Polyphase Filter Bank FormFilter bank (right) avoids multiplication by zeroSplit filter g[m] into L shorter polyphase filters operating at lower rate (no loss in output precision)Saves factor of L in multiplications and prev. inputs stored and increases parallelism by factor of L g0[n]g1[n]gL-1[n]s(Ln)s(Ln+1)s(Ln+(L-1))g[m] LOversampling filter a.k.a. Pulse shaper a.k.a. Linear interpolatorMultiplies by zero (L-1)/L of the time1LL114Decreasing Sampling RateFinite impulse response (FIR) filter g[m]Typically a lowpass filterEnforces sampling theoremDownsampling by L denoted as LInputs L samplesOutputs first sample and discards L-1 samplesDecreases sampling rate by factor of LSometimes combined intorate changing FIR block 441g[m ]1 11 2Input to Downsampler3 4 5 6 7 8m01 2Output of Downsamplern0FIR411515Polyphase Filter Bank FormFilter bank (right) only computes values outputSplit filter h[m] into M shorter polyphase filters operating at lower rate (no loss in output precision)Saves factor of M in multiplications and increases parallelism by factor of L h0[n]h1[n]hM-1[n]h[m] Ms(Mn)s(Mn+1)s(Mn+(M-1))Undersampling filter a.k.a. Matched filter + sampling a.k.a.Linear decimatorOutputs discarded (M-1)/M of the time11M M16OutlineIntroductionSignal processing system design needsSynchronous dataflowSignal processing building blocksFiltersRate changersSignal
View Full Document