Unformatted text preview:

© P.Prinetto - all rights reserved Version 1.0 5.3.15.3 – RT level sequential blocksECE 465RT level sequential blocksPaolo PRINETTOPolitecnico di Torino (Italy)University of Illinois at Chicago, IL (USA)[email protected]@uic.eduwww.testgroup.polito.itLecture 5.325.3 Goal• This lecture presents the set of functional sequential blocks that are usually considered to be “elementary” or “basic” at the RT level.35.3 Prerequisites• Module 4 and lecture 7.145.3 Homework• No particular homework is foreseen55.3 Further readings• Students interested in making a reference to a text book on the arguments covered in this lecture can refer, for instance, to:− M. Morris Mano, C.R.Kime: “Logic and Computer Design Fundamentals,” 2nd edition updatedPrentice Hall, Upple Saddle River, NJ (USA), 2001, (chapter 3, pp. 111-148 )65.3 OutlineRegisterShift registerRAMCounter© P.Prinetto - all rights reserved Version 1.0 5.3.25.3 – RT level sequential blocksECE 46575.3 OutlineRegisterShift registerRAMCounter85.3 RegisterAn n-bit register is a sequential functional block able to perform the following operations:• asynchronous clear• synchronous clear • n-bit data parallel load• stored data hold95.3 Register: I/O signalsInput Data signals : D_IN (n-1 downto 0)Output Data signals : D_OUT (n-1 downto 0)Clock signal : CLKReset signal : ASYNC_CLRInput Control signals : CLK_EN,SYNC_CLROutput Control signals : none105.3 Register: symbolD_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENCLK115.3 Register: Asynchronous clearD_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENCLK125.3 Register: Asynchronous clearD_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENCLK1----000..00ASYNC_CLR = 1⇓D_OUT = 000..00© P.Prinetto - all rights reserved Version 1.0 5.3.35.3 – RT level sequential blocksECE 465135.3 Register: Data holdD_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENCLK0--0-ASYNC_CLR = 0CLK_EN = 0⇓D_OUTt+1= D_OUTt145.3 Register: Synchronous clearD_IN D_OUTASYNC_CLRSYNC_CLRCLK_EN0-11↑000..00ASYNC_CLR = 0CLK_EN = 1SYNC_CLR = 1CLOCK ↑⇓D_OUT = 000..00CLK155.3 Register: Parallel loadD_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENCLK001↑ASYNC_CLR = 0CLK_EN = 1SYNC_CLR = 0CLOCK ↑⇓D_OUT = D_INvalue value165.3 OutlineRegisterShift registerRAMCounter175.3 CounterTwo kinds of counters will be considered:• Up-down modulo m counters• 1-to-m up counters185.3 Up-down modulo m countersAn up-down modulo m counter is a sequential functional block able to perform the following operations:• asynchronous clear• synchronous clear• n-bit data parallel load• holding the stored data• incrementing, modulo m, the stored data• decrementing, modulo m, the stored data© P.Prinetto - all rights reserved Version 1.0 5.3.45.3 – RT level sequential blocksECE 465195.3 The concept of moduloEach counter is characterized by its modulo, i.e., the maximum number m of different output configurations it can get.It must obviously be:m ≤ 2 # FFsA modulo m counter (often referred to as |m|) gets all the values between 0 and m -1.205.3 I/O signalsInput Data signals : D_IN (n-1 downto 0)Output Data signals : D_OUT (n-1 downto 0)Clock signal : CLKReset signal : ASYNC_CLRInput Control signals : CLK_EN,SYNC_CLR,LD/~CNT,UP/~DN Output Control signals : TC215.3 I/O signalsInput Data signals : D_IN (n-1 downto 0)Output Data signals : D_OUT (n-1 downto 0)Clock signal : CLKReset signal : ASYNC_CLRInput Control signals : CLK_EN,SYNC_CLR,LD/~CNT,UP/~DN Output Control signals : TCOperation selection: it enablesparallel loadingwhen asserted,countingotherwise Counting direction225.3 I/O signalsInput Data signals : D_IN (n-1 downto 0)Output Data signals : D_OUT (n-1 downto 0)Clock signal : CLKReset signal : ASYNC_CLRInput Control signals : CLK_EN,SYNC_CLR,LD/~CNT,UP/~DN Output Control signals : TCTerminal Count: asserted when the counter is enabled and a counting limit is reached:m-1 when counting up0 when counting down235.3 SymbolD_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENCLKLD/~CNTUP/~DNTC|m|245.3 Counter: Parallel loadvalue001↑D_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENLD/~CNTUP/~DNTC1-CLK|m|© P.Prinetto - all rights reserved Version 1.0 5.3.55.3 – RT level sequential blocksECE 465255.3 Counter: Parallel loadvalue001↑D_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENLD/~CNTUP/~DNTC1-0ASYNC_CLR = 0CLK_EN = 1SYNC_CLR = 0CLOCK ↑⇓D_OUT = D_INTC = 0valueCLK|m|265.3 Counter: Increment operation001↑D_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENLD/~CNTUP/~DNTC01-CLK|m|275.3 Counter: Increment operation001↑D_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENLD/~CNTUP/~DNTC01ASYNC_CLR = 0CLK_EN = 1SYNC_CLR = 0LD/~CNT = 0UP/~DN = 1CLOCK ↑⇓D_OUTt+1=(D_OUTt+ 1) mod mUpdate TC-CLK|m|285.3 Counter: Decrement operation001↑D_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENLD/~CNTUP/~DNTC00-CLK|m|295.3 Counter: Decrement operation001↑D_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENLD/~CNTUP/~DNTC00ASYNC_CLR = 0CLK_EN = 1SYNC_CLR = 0LD/~CNT = 0UP/~DN = 0CLOCK ↑⇓D_OUTt+1=(D_OUTt- 1) mod mUpdate TC-CLK|m|305.3 1-to-m up countersA 1-to-m up counter is a sequential functional block able to perform the following operations:• asynchronous clear• synchronous clear• n-bit data parallel load• holding the stored data• incrementing the stored data from 1 to m© P.Prinetto - all rights reserved Version 1.0 5.3.65.3 – RT level sequential blocksECE 465315.3 Counting behaviorThe major difference w.r.t. the up-down counter is that, in this case, counting is performed from 1 to m: when the value m is reached, the output TC is asserted and the next value is 1.325.3 I/O signalsInput Data signals : D_IN (n-1 downto 0)Output Data signals : D_OUT (n-1 downto 0)Clock signal : CLKReset signal : ASYNC_CLRInput Control signals : CLK_EN,SYNC_CLR,LD/~CNT,Output Control signals : TC335.3 SymbolD_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENCLKLD/~CNTTC1 to m345.3 OutlineRegisterShift registerRAMCounter355.3 Shift registerA shift register is a sequential functional block able to perform the following operations:• parallel load of an n-bit data • stored data retention • asynchronous clear• synchronous clear• stored data right shift• stored data left shift.365.3 Shift register : symbolD_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENCLKLEFT_INLOAD/~SHIFTRIGHT/~LEFTRIGHT_IN© P.Prinetto - all rights reserved Version 1.0 5.3.75.3 – RT level sequential blocksECE 465375.3 Shift register : symbolD_IN D_OUTASYNC_CLRSYNC_CLRCLK_ENCLKLEFT_INLOAD/~SHIFTRIGHT/~LEFTRIGHT_INShifting directionOperation selection: it enablesparallel loadingwhen asserted,shiftingotherwise385.3 Shift


View Full Document
Download RT level sequential blocks
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view RT level sequential blocks and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view RT level sequential blocks 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?