CHAPTER 5 MINIMIZED MEMORY VITERBI DECODER ARCHITECTURE USING ZIG-ZAG ALGORITHM

Size: px
Start display at page:

Download "CHAPTER 5 MINIMIZED MEMORY VITERBI DECODER ARCHITECTURE USING ZIG-ZAG ALGORITHM"

Transcription

1 127 CHAPTER 5 MINIMIZED MEMORY VITERBI DECODER ARCHITECTURE USING ZIG-ZAG ALGORITHM 5.1 INTRODUCTION Viterbi decode is a representative decoding method for convolutional coding. It is widely used in communication system and signal processing to achieve low-error-rate data transmission. When erroneous data are received, the closest codeword is selected using the maximum likelihood decoding (MLD). In the implementation, there are two common methods used to determine and store survivor path: Register Exchange Method (RE) Jens Spars et al (1991) and Trace Back method (TB) Shu Lin and Costello (1983). The register exchange algorithm needs the same number of multiplexers and dual port memory as the number of states multiplied by the survivor path length and they are activated by every cycle to update data in memory. It results in considerable power consumption and large circuit area. Thus, the trace back method is preferred when constraint length is large. In the trace back method, the survivor states from the add-compare-select (ACS) units are simply stored in survivor path memory in sequence and are used for trace back after the survivor path is determined. Although Viterbi Algorithm has been generally applied for decades, improvements in decoding efficiency and memory requirements are still much demanded. Most of the previous researches Gerhaxd Fettweis and Fettweis (1992) targeted on the modification of ACS process to accelerate the

2 128 decoding process but resulted in the need of extra hardware. Therefore, we try to turn our focus to the other components of Viterbi decoder and find that there are still some rooms left for improvements in SMU such as the high latency of trace back management (TBM) and large memory requirement for trace back method. This motivates us to search for a better SMU design that is expected to improve both decoding efficiency and hardware requirements of TBM. For survivor memory management, conventionally, survivor state metrics have to be stored every stage until the entire data sequences have been processed and then trace back process started. However, in the case of conventional encoder structures more number of stages are required to store the state metric values and decode the output sequence. In the proposed method only one additional stage is required instead of number of stages to trace back and decode out the entire data sequence. Hence, trace back shall be realized faster by hopping over a block of redundant stages. With the same concept, a new memory management method for Viterbi decoder is naturally developed so as to reach better performance in two aspects that decoding efficiency could be improved approaching to the performance of TB method, and approximately 50% of TB memory only used to store trace back information could be saved memory utilization. Several algorithms namely one pointer algorithm, k-pointer odd algorithm, k-pointer even algorithm and hybrid algorithm for trace back memory management in Viterbi Decoders were presented and implemented in Feygin and Gulak (1993). Among these, one-pointer algorithm is the best as the memory requirement is approximately half. Pipelined Viterbi decoder with R = 1/2 and k = 7 using look-ahead trace back is implemented in Baek et al (2001). More than 40% of the memory is reduced by this method. Pretrace back architecture for survivor memory unit of Viterbi decoders,

3 129 targeting wireless communication applications is focused in Yao Gang et al (2005). This method reduces the survivor memory operations by 50% and the memory size as well as latency is reduced by 25% compared to the conventional trace back. Modified Register Exchange (MRE) method for IS-95 Reverse link is introduced in Chanho Lee (2004). The Viterbi decoder is modeled for R = 1/3, k = 9 and trace forward depth of 45 in 0.35 µm CMOS technology. The memory size is reduced by 32% and latency by 50%. The same method can be used for 3G (W CDMA) systems, when a serial architecture with 4 ACS units is implemented in Chaiwat Keawsai1 et al (2004), where the data rate of this architecture exceeds 2 Mbps. The structural similarity between Viterbi and Fast Fourier Transform (FFT) is discussed in Lihong Jia et al (1998). Based on the memory management and data routing techniques developed for long size FFT, a pipelined architecture is implemented to realize Viterbi algorithm for moderate speed applications. The implementation results give a chip area reduction by about 11mm 2. The ACS area is about 7mm 2, which occupies about 65% of the total area. In David Yeh et al (1996) the architecture and implementation of a constraint length 14, a reconfigurable (RACER) Viterbi Decoder that achieves a decoding rate of 41 Kbps is specified. The system uses 36 Xilinx XL 4010 FPGA s multi ring- general cascade Viterbi decoder architecture. The results show that a decoding rate of 1 Mbps can be achieved by this technology. A trace back technique that utilizes a novel forward tracing algorithm HDTV Viterbi decoder is described in Hu et al (1999). System level simulation verified the new trace back technique. An algebraic formulation of the survivor memory management is introduced and it provides a framework for the derivation of new algorithmic and architectural solutions (Gerhaxd Fettweis and Fettweis 1992). VLSI case studies show that about 50% savings are possible in hardware complexity as well as power consumption. A generalized method using precompiled trace-back is

4 130 presented and the resolution by a graphical method is presented in Ming Bo Lin (2000), gives an alternate method based on permutation networks for memory management. Here, instead of using registers for storage, permutation networks have been used and the resulting circuit has smaller routing area than register exchange method. It has faster decoding speed than trace back technique, regardless of the constraint length. This chapter presents a novel approach, which minimizes the memory usage when compared to the trace back method. The trace back method uses two blocks of RAM arrays. When one RAM is used for storage, the other one performs the trace back and vice versa. We have designed a Viterbi Decoder for efficient memory management by adapting the Zig-Zag algorithm. Here, the algorithm uses a single block of RAM instead of two. The single RAM may be programmed in such a way that it performs the storage as well as trace back using a single RAM block. This method minimizes the memory usage and hence the area occupied by the Viterbi system is reduced. 5.2 MEMORY MANAGEMENT TECHNIQUES In the decoder, the SMU is the block, which recovers the received data based on all the information from the PMU. It also consumes a large amount of power. For a trace back SMU with RAMs, up to 63% overall power is consumed as it requires a large memory to store the local and global winners information as well as complex logic to generate the decoded data (Munteanu 2000). Two major types of SMU implementation exist: Register Exchange (Jens Spars et al 1991 and Trace Back Shu Lin and Costello 1983) Register Exchange Approach Figure 5.1 illustrates the principle four state register exchange architecture (Kubota et al 1993). In this architecture, a register is assigned to

5 131 each state and contains decoded data for the survivor path from the initial time slot to the current time slot. As illustrated in Figure 5.1, the ideal path is indicated with bold arrows. According to the local winner of each state, the register content is shifted into another state register and appended with the corresponding decoded data. For instance, at time slot T1 the survivor branch for state 1 is from state 0 at T0; therefore, the initial content of the state 0 register, which is a 0, is shifted into state 1 register at T1 and the corresponding decoded data for the survivor branch, which is a 1, is appended to it. Registers on the ideal path, as shown in Figure 5.1, spread their contents to other state registers as time progresses due to the nature of ACS process. Thus, at the end of time slot T4, the state registers all contain the bit(s) from the same source registers, which is the state 1 register at time T1. As shown in Figure 5.1, the two most significant bits of each register at time slot T4 is 01. Therefore, this is the decoded output for timeslots T0 and T1. Figure 5.1 A four state register exchange implementation of the SMU design (The bold arrows indicate the ideal path of the encoder states)

6 132 The register exchange approach is claimed to provide high throughput (Kubota et al 1993), as it eliminates the need to trace back since the state register contains the decoded output sequence. However, it is obviously not power efficient as moving data from one register to another wastes a large amount of power. In addition as D-type flip-flops rather than transparent latches need to be used to implement the shift registers although the amount of data, which needs to be held to determine the output, is identical to that required for trace back approach. This all leads to relatively high power consumption Trace Back Approach The trace back approach is generally a lower power alternative to the register exchange method. In trace back, one bit for the local winner is assigned to each state to indicate if the survivor branch is from the upper or the lower position. Using this local winner, it is possible to track down the survivor path starting from a final state and starting from a global winner state as previously discussed enhances this search. Figure 5.2 shows a trace back SMU architecture adopted from the architecture described in Riocreux et al (2001), which used global winner information. Here, local winners are stored in the local winner memory. Trace back is started at the global winner from the PMU, which is used as an address to read out the local winner of the global winner state. Then, in the trace back logic the previous global winner in the trace back is produced by shifting the current global winner one place to the right and inserting the read out local winner into the most significant bit position; this arithmetic relationship between parent and child states derives from the butterfly connection shown in Figure 5.3. This new global winner can then be stored into the global winner memory to update the global winner existing at that time slot. The process repeats with the updated global winner reading out its

7 133 local winner, which is used to form the global winner for the previous time slot. This process continues until the global winner formed agrees with that stored or it reaches the oldest time slot Riocreux et al (2001). In the output logic, shown in Figure 5.2, the decoded output can be obtained from the least significant bit of the global winners stored in the global winner memory. Figure 5.2 A possible trace back SMU implementation using memory As described in the last section, local and global winners are stored in memory. So for each trace back, local winners are repeatedly read out from the local winner memory and new global winners are written back to the global winner memory. This results in complex read/write control mechanisms. Furthermore, unless flip flop storage is used then multi-port SRAM blocks are required as seen in previous implementations (Joeressen and Meyr 1995). Moreover, it is preferable to run trace backs in parallel as an incorrect trace back may damage a good path and it needs a new trace back to correct this as soon as possible. It has been suggested in Black and Meng (1997) that the read-write-based trace back also has a serious speed overhead due to the need to access multiple memory pointers. Therefore, reducing the

8 134 complexity of the trace back logic and memory, increasing the trace back throughput, and reducing the SMU power consumption are all current research issues in Viterbi decoder designs (Joeressen and Meyr 1995). Figure 5.3 The butterfly state transition diagram represents state transitions of a convolutional encoder of constraint length k Many approaches have been proposed attempting to address these issues, e.g. increasing the number of pointers for parallel trace backs, decreasing the memory access time of the read operation, or increasing the access rate of the read operation in a time multiplexed method (Chang et al 2000). However, none of them change the fundamental read-write architecture in the trace back implementations, so have only limited success in solving these problems. 5.3 EXISTING TRACE BACK METHOD The memory-trace back method has commonly been used in lowthroughput low-power applications. The SMU consists of an SMU control unit and two RAM blocks as shown in Figure 5.4. The memory-trace back method stores the intermediate decision bits at static locations in memory. Since RAM blocks typically operate by reading or writing multiple bits per cycle, a vector of decisions output by the parallel ACSs can be written into

9 135 memory simultaneously. At the end of the first clock cycle, the RAM 1 will be filled. The second cycle starts with storage in RAM 2 and simultaneously trace back in RAM 1. Thus in trace back method, the storage as well as trace back takes place, but in different RAM blocks. Figure 5.4 Survivor memory unit in trace back method The trace back operation only needs to recall the decision bits that correspond to nodes along a particular trace back path. When one memory is full, then data is written to next memory and so on. When the two memory blocks are full, the trace- back operation starts. When the first received symbol in memory block is handled, the state is stored so the starting point for the previous memory block s trace-back operation is known. This contrasts with the register-exchange method, which constantly moves an array of decision bits through a pipeline of flip-flops. The use of standard SRAM modules offers little power or area advantage over register exchange because of the overhead of peripheral circuitry and standard word addressing.

10 PROPOSED ZIG-ZAG ALGORITHM The memory management in Viterbi decoders is done in the Survivor Memory Unit (SMU). Usually trace back of the trellis structure is carried out in order to restore the data sequences. Using block of RAM performed the storage of the state metric. Memory management generally deals with reducing the size of the RAM and thus resulting in the reduction of Silicon area. The survivor sequences from the ACS unit are stored in the form of sequences and have been stored in a RAM unit. The RAM is an array of recursive pointers. The single RAM has been used to store the survivor sequence bits in one direction and the sequence of trace back in an opposite direction simultaneously. Once the first packet process gets completed, the memory is full of state metric values, and then the trace back takes place in the reverse direction. Figure 5.5 shows the representation of the direction of storage as well as trace back using Zig-Zag algorithm. Here for the first time, the direction of storage is from A to B in the forward direction. After completion of storage of state metric for first packet symbols, the direction of the trace back gets started from B to A. In the second time the direction of storage is from B to A in reverse direction, the direction of trace back is from A to B forward direction. Here both storage unit as well as the trace back unit has utilized the same amount of memory. All the operations are performed by this way and the direction is in Zig-Zag manner. This technique thereby reduces the amount of memory utilization.

11 137 Figure 5.5 Schematic representation of direction of storage as well as trace back using Zig-Zag algorithm The RAM is organized as a rectangular page where each column contains all the state metrics made for a given bit time t, and moving forward one column along a row is equivalent to a bit time t+1. The state forms the row address and the bit time forms the column address. The structure of the survivor RAM unit with state metrics are shown in Table 5.1. Table 5.1 Structure of RAM with state metrics values of received symbols Time/ t0 t 1 t 2 t 3 t 4 t 5 t 6 t 7 t 8 t 9 t 10 t 11 t 12 t 13 t 14 t 15 t 16 t 17 t 18 t 19= t L-1 t 20=t L state S S S S S S S S Information sequence ( 20 bit information)

12 138 At time t 0 the first column of RAM is initialized with zeros and then at each successive time a set of ACS operations is completed and the resulting state metrics are stored in the appropriate column of the RAM. At each time, the column address is incremented by one along with same row address. At the end of a state update cycle, the entire survivor path memory contains all the state metric values. The Trellis path converges and now the trace back starts in the opposite direction from t L to t 1. The decoding process begins with building the accumulated error metric for 20 numbers of received channel symbol, and selects with the smallest accumulated error metric at each time instant. Once this information is built up, the Viterbi decoder is ready to regenerate the sequence of bits that are input to the convolutional encoder when the message is encoded for transmission. The first packet trace back proceeds from t L stage to t L-1 stage select the state having the smallest accumulated error metric and decode the binary information. Once the decoding process have been completed for t L stage to t L-1 stage the last t L column metrics values were not required for second bit decoding process. This last t L stage memory has been utilized to store second cycle first symbol calculated metrics. Similarly traces backward stage by stage throughout the state history table and decoder the information. Simultaneously, the second cycle storage operations are done in the reverse direction from t L to t 1. The process is continuing, until all the message sequences are processed. The storage of the sequences as well as the trace back is performed in a zig-zag manner and hence the name Zig-Zag Algorithm. This algorithm provides greater area advantage compared to the two RAM trace back method Proposed Architecture of the VD The architecture of the VD consists of Branch Metric Unit, Path Metric Unit and Survivor Memory Unit. The proposed VD needs an external

13 139 RAM block, of which size depends on the applications. The architecture has been designed for the scalability to meet the requirements of applications with high performance needs. The basic block diagram of a Viterbi decoder is as shown in Figure The VD has been implemented with eight states and eleven stages. The number of states corresponds to the size and the performance of the decoder, the bigger 15 number of states leads to bigger size and better error correction Survivor Memory Unit (SMU) The SMU consists of two parts: SMU control block and RAM block. Here the RAM-blocks are typical memories with address lines and data lines. Writing and reading is enabled in RAM blocks for storing the decision values. All the functionality of the SMU is inside the SMU control block. The SMU behaves such that the decision values are written to memory. The parameter trace back length defines how many symbols decision values are written to the memory block. Moving backwards in trellis diagram does the trace-back operation. The state that has the smallest path metric value is stored to memory (PMU gives that state). On the basis of that information, the address of the decision value in RAM memory has been calculated. This value is picked and the previous state is calculated with the aid of the decision value and the bit, which has caused that state transition, is stored. In this way the whole memory block is utilized Memory Management in Viterbi Decoders Register Exchange (RE) method obtains the decoded data using multiplexes and dual port memory. This method is not used presently because of large power consumption and large area required in VLSI implementation.

14 140 The trace back (TB) method is the preferred method in the design of large constraint length, high performance VD because of lower power dissipation. Here, we have used Zig-Zag algorithm which allows less memory usage than the conventional trace back (TB) method. Choosing optimized value of the parameters chosen compensates the trade off in speed due to minimized area. The memory-trace back method has commonly been used in lowthroughput low-power applications. The memory-trace back method stores the intermediate decision bits at static locations in memory. Since RAM blocks typically operate by reading or writing multiple bits per cycle, a vector of decisions output by the parallel ACSs has been written into memory simultaneously. The trace back operation only needs to recall the decision bits that correspond to nodes along a particular trace back path. When one memory is full, then data is written to next memory and so on. When the two memory blocks are full, the trace- back operation starts. When the first received symbol in the memory block is handled, the state is stored so the starting point for the previous memory block s trace-back operation is known. This contrasts with the register-exchange method, which constantly moves an array of decision bits through a pipeline of flip-flops. The use of standard SRAM modules offers little power or area advantage over register exchange because of the overhead of peripheral circuitry and standard word addressing. The memory for the trace back method permits the design of very compact RAM that provides significant area advantages. In a 0.18-µm CMOS technology, the area of a typical SRAM cell is about 2.4 m, in contrast with the 50- m area required for a flip-flop used in the register-exchange method (Hu et al 1999). The Zig-Zag method utilizes all the advantages of memory trace back. The basic SMU structure in Zig-Zag algorithm consists of a single SMU control unit and a single RAM as shown in Figure 5.6. The storage as well as trace back using single RAM using Zig-Zag algorithm is shown in

15 141 Figure 5.7. Encode output bits and 6 for computational purpose, and the decision bits are 20 bits for Zig-Zag algorithm and 40 bits for the trace back algorithm. Figure 5.6 Survivor memory units in zig-zag algorithm Figure 5.7 The trellis diagram for Viterbi decoder with k=4, R=1/6 and N=8

16 RESULTS AND DISCUSSION The proposed VD has been designed and implemented in FPGA Xilinx Spartran II with constrain length 4 and code rate 1/6. In order to reduce the memory, Zig-Zag algorithm has been adopted in survivor memory unit. We have analyzed various parameters for the effective memory utilization of the path metric unit, trace back memory unit, total memory used for computation latency. Various values achieved through our proposed algorithm have been compared with the existing conventional trace back algorithm and has been presented in Table 5.2. We have considered the trace back depth of 20, path metric memory bits of 16 6, encoded output bits 6 for computational purpose and the decision bits are 20 for Zig-Zag algorithm and 40 bits for the trace back algorithm. Table 5.2 Comparison of one point trace back and Zig-Zag algorithm memory utilization Item Method Conventional Trace back method (Feygin G. and Gulak P. 1993) Proposed Zig-Zag algorithm Input buffer L*n=20*6=120 L*n=20*6=120 Path metric memory S*p=8*16*6=768 S*p=8*16*6=768 Trace Back memory L*S*d=20*8*40=6,400 L*S*d=20*8*20=3,200 Total memory 7,288(100%) 4,088(56.09%) Latency L+L=40K=160(100%) L=20K=80(50%) L : Trace back depth = 20 P : Path metric memory bits = 16*6 n : Encoder o/p bits = 6 d : Decision bits = 20 (for Zig-Zag algorithm), 40 (for Trace back method) S : No. of states =8 K : Constraint length =4

17 143 Table 5.3 Comparison of Total memory utilization with different constrain length at constant code rate 1/6 Constrain length (K) Conventional Trace back method Total memory Proposed Zig-Zag method Total memory Table 5.3 shows the memory utilization with different constraint length for the one point and zig-zag approaches. Figure 5.8 shows the memory usage by the different methods of the Viterbi decoder. It is seen from the figure that the memory usage by the buffer and PMM for both the TB and Zig-Zag algorithm based architecture are the same. It is also seen from the figure that the memory utilization of the conventional method is more than that of proposed method. Using this method, the latency can also be reduced to about 50%. The trade off between area as well as latency is compromised here, by choosing optimized parameters. Figure 5.9 shows the memory utilization with different constraint length for the one point and zig-zag approaches. Here, memory of the zig-zag algorithm approach is lower than the trace back approach. The reduction in memory of VD increases the performance of the system and thereby reduces the latency of the system.

18 144 Figure 5.8 Memory usages by one point trace back and Zig-Zag algorithm Figure 5.9 Reduced total memory utilization with different constrain length at constant code rate 1/6

19 145 The synthesis report of the proposed method and the existing trace back method is described in Table 5.4. The proposed method utilized only 1227 slices but in TB method 2492 slices have been utilized. The power dissipation of the proposed method is only 450mW. The conventional TB method has the power dissipation of mw which is more than the proposed method. Table 5.4 Comparison of resources utilization results using one point algorithm and trace back algorithm Item Method Trace back Method (Feygin and Gulak 1993) Zig-Zag Algorithm No. of RAM Blocks 2 1 Operating Frequency MHz MHz Total Delay ns ns No. of Slices No. of 4 i/p LUT s Gate Count Power Dissipation mw mw 5.6 SUMMARY In this chapter, we have reported a novel Zig-Zag algorithm for survivor memory management in Viterbi Decoders, We have utilized one RAM block for the survivor memory unit as well as trace back. We have achieved a latency of 50% compared to 100% for the trace back algorithm. Only 56.09% of total memory has been utilized in the proposed algorithm than the trace back method. The operating frequency for the trace back algorithm is MHz, but it is MHz for the proposed approach. Total delay is only 6.785ns but it is ns for the trace back algorithm approach.

Switch Fabric Implementation Using Shared Memory

Switch Fabric Implementation Using Shared Memory Order this document by /D Switch Fabric Implementation Using Shared Memory Prepared by: Lakshmi Mandyam and B. Kinney INTRODUCTION Whether it be for the World Wide Web or for an intra office network, today

More information

Advanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2

Advanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2 Lecture Handout Computer Architecture Lecture No. 2 Reading Material Vincent P. Heuring&Harry F. Jordan Chapter 2,Chapter3 Computer Systems Design and Architecture 2.1, 2.2, 3.2 Summary 1) A taxonomy of

More information

RAM & ROM Based Digital Design. ECE 152A Winter 2012

RAM & ROM Based Digital Design. ECE 152A Winter 2012 RAM & ROM Based Digital Design ECE 152A Winter 212 Reading Assignment Brown and Vranesic 1 Digital System Design 1.1 Building Block Circuits 1.1.3 Static Random Access Memory (SRAM) 1.1.4 SRAM Blocks in

More information

Implementation of Modified Booth Algorithm (Radix 4) and its Comparison with Booth Algorithm (Radix-2)

Implementation of Modified Booth Algorithm (Radix 4) and its Comparison with Booth Algorithm (Radix-2) Advance in Electronic and Electric Engineering. ISSN 2231-1297, Volume 3, Number 6 (2013), pp. 683-690 Research India Publications http://www.ripublication.com/aeee.htm Implementation of Modified Booth

More information

Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng

Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng Digital Logic Design Basics Combinational Circuits Sequential Circuits Pu-Jen Cheng Adapted from the slides prepared by S. Dandamudi for the book, Fundamentals of Computer Organization and Design. Introduction

More information

Counters and Decoders

Counters and Decoders Physics 3330 Experiment #10 Fall 1999 Purpose Counters and Decoders In this experiment, you will design and construct a 4-bit ripple-through decade counter with a decimal read-out display. Such a counter

More information

ECE410 Design Project Spring 2008 Design and Characterization of a CMOS 8-bit Microprocessor Data Path

ECE410 Design Project Spring 2008 Design and Characterization of a CMOS 8-bit Microprocessor Data Path ECE410 Design Project Spring 2008 Design and Characterization of a CMOS 8-bit Microprocessor Data Path Project Summary This project involves the schematic and layout design of an 8-bit microprocessor data

More information

NEW adder cells are useful for designing larger circuits despite increase in transistor count by four per cell.

NEW adder cells are useful for designing larger circuits despite increase in transistor count by four per cell. CHAPTER 4 THE ADDER The adder is one of the most critical components of a processor, as it is used in the Arithmetic Logic Unit (ALU), in the floating-point unit and for address generation in case of cache

More information

MIMO detector algorithms and their implementations for LTE/LTE-A

MIMO detector algorithms and their implementations for LTE/LTE-A GIGA seminar 11.01.2010 MIMO detector algorithms and their implementations for LTE/LTE-A Markus Myllylä and Johanna Ketonen 11.01.2010 2 Outline Introduction System model Detection in a MIMO-OFDM system

More information

Networking Virtualization Using FPGAs

Networking Virtualization Using FPGAs Networking Virtualization Using FPGAs Russell Tessier, Deepak Unnikrishnan, Dong Yin, and Lixin Gao Reconfigurable Computing Group Department of Electrical and Computer Engineering University of Massachusetts,

More information

CHAPTER 3 Boolean Algebra and Digital Logic

CHAPTER 3 Boolean Algebra and Digital Logic CHAPTER 3 Boolean Algebra and Digital Logic 3.1 Introduction 121 3.2 Boolean Algebra 122 3.2.1 Boolean Expressions 123 3.2.2 Boolean Identities 124 3.2.3 Simplification of Boolean Expressions 126 3.2.4

More information

150127-Microprocessor & Assembly Language

150127-Microprocessor & Assembly Language Chapter 3 Z80 Microprocessor Architecture The Z 80 is one of the most talented 8 bit microprocessors, and many microprocessor-based systems are designed around the Z80. The Z80 microprocessor needs an

More information

FPGA. AT6000 FPGAs. Application Note AT6000 FPGAs. 3x3 Convolver with Run-Time Reconfigurable Vector Multiplier in Atmel AT6000 FPGAs.

FPGA. AT6000 FPGAs. Application Note AT6000 FPGAs. 3x3 Convolver with Run-Time Reconfigurable Vector Multiplier in Atmel AT6000 FPGAs. 3x3 Convolver with Run-Time Reconfigurable Vector Multiplier in Atmel AT6000 s Introduction Convolution is one of the basic and most common operations in both analog and digital domain signal processing.

More information

A CDMA Based Scalable Hierarchical Architecture for Network- On-Chip

A CDMA Based Scalable Hierarchical Architecture for Network- On-Chip www.ijcsi.org 241 A CDMA Based Scalable Hierarchical Architecture for Network- On-Chip Ahmed A. El Badry 1 and Mohamed A. Abd El Ghany 2 1 Communications Engineering Dept., German University in Cairo,

More information

How To Fix A 3 Bit Error In Data From A Data Point To A Bit Code (Data Point) With A Power Source (Data Source) And A Power Cell (Power Source)

How To Fix A 3 Bit Error In Data From A Data Point To A Bit Code (Data Point) With A Power Source (Data Source) And A Power Cell (Power Source) FPGA IMPLEMENTATION OF 4D-PARITY BASED DATA CODING TECHNIQUE Vijay Tawar 1, Rajani Gupta 2 1 Student, KNPCST, Hoshangabad Road, Misrod, Bhopal, Pin no.462047 2 Head of Department (EC), KNPCST, Hoshangabad

More information

Low Power AMD Athlon 64 and AMD Opteron Processors

Low Power AMD Athlon 64 and AMD Opteron Processors Low Power AMD Athlon 64 and AMD Opteron Processors Hot Chips 2004 Presenter: Marius Evers Block Diagram of AMD Athlon 64 and AMD Opteron Based on AMD s 8 th generation architecture AMD Athlon 64 and AMD

More information

MICROPROCESSOR. Exclusive for IACE Students www.iace.co.in iacehyd.blogspot.in Ph: 9700077455/422 Page 1

MICROPROCESSOR. Exclusive for IACE Students www.iace.co.in iacehyd.blogspot.in Ph: 9700077455/422 Page 1 MICROPROCESSOR A microprocessor incorporates the functions of a computer s central processing unit (CPU) on a single Integrated (IC), or at most a few integrated circuit. It is a multipurpose, programmable

More information

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill Objectives: Analyze the operation of sequential logic circuits. Understand the operation of digital counters.

More information

COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design

COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design PH-315 COMINATIONAL and SEUENTIAL LOGIC CIRCUITS Hardware implementation and software design A La Rosa I PURPOSE: To familiarize with combinational and sequential logic circuits Combinational circuits

More information

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: 03-4227151 ext:34534 Email: jimmy@ee.ncu.edu.tw. Sequential Circuit

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: 03-4227151 ext:34534 Email: jimmy@ee.ncu.edu.tw. Sequential Circuit Modeling Sequential Elements with Verilog Prof. Chien-Nan Liu TEL: 03-4227151 ext:34534 Email: jimmy@ee.ncu.edu.tw 4-1 Sequential Circuit Outputs are functions of inputs and present states of storage elements

More information

Lecture-3 MEMORY: Development of Memory:

Lecture-3 MEMORY: Development of Memory: Lecture-3 MEMORY: It is a storage device. It stores program data and the results. There are two kind of memories; semiconductor memories & magnetic memories. Semiconductor memories are faster, smaller,

More information

Sequential 4-bit Adder Design Report

Sequential 4-bit Adder Design Report UNIVERSITY OF WATERLOO Faculty of Engineering E&CE 438: Digital Integrated Circuits Sequential 4-bit Adder Design Report Prepared by: Ian Hung (ixxxxxx), 99XXXXXX Annette Lo (axxxxxx), 99XXXXXX Pamela

More information

LogiCORE IP AXI Performance Monitor v2.00.a

LogiCORE IP AXI Performance Monitor v2.00.a LogiCORE IP AXI Performance Monitor v2.00.a Product Guide Table of Contents IP Facts Chapter 1: Overview Target Technology................................................................. 9 Applications......................................................................

More information

Chapter 4 Register Transfer and Microoperations. Section 4.1 Register Transfer Language

Chapter 4 Register Transfer and Microoperations. Section 4.1 Register Transfer Language Chapter 4 Register Transfer and Microoperations Section 4.1 Register Transfer Language Digital systems are composed of modules that are constructed from digital components, such as registers, decoders,

More information

Floating Point Fused Add-Subtract and Fused Dot-Product Units

Floating Point Fused Add-Subtract and Fused Dot-Product Units Floating Point Fused Add-Subtract and Fused Dot-Product Units S. Kishor [1], S. P. Prakash [2] PG Scholar (VLSI DESIGN), Department of ECE Bannari Amman Institute of Technology, Sathyamangalam, Tamil Nadu,

More information

1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1.

1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1. File: chap04, Chapter 04 1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1. 2. True or False? A gate is a device that accepts a single input signal and produces one

More information

CHAPTER 5 FINITE STATE MACHINE FOR LOOKUP ENGINE

CHAPTER 5 FINITE STATE MACHINE FOR LOOKUP ENGINE CHAPTER 5 71 FINITE STATE MACHINE FOR LOOKUP ENGINE 5.1 INTRODUCTION Finite State Machines (FSMs) are important components of digital systems. Therefore, techniques for area efficiency and fast implementation

More information

Optimising the resource utilisation in high-speed network intrusion detection systems.

Optimising the resource utilisation in high-speed network intrusion detection systems. Optimising the resource utilisation in high-speed network intrusion detection systems. Gerald Tripp www.kent.ac.uk Network intrusion detection Network intrusion detection systems are provided to detect

More information

(Refer Slide Time: 00:01:16 min)

(Refer Slide Time: 00:01:16 min) Digital Computer Organization Prof. P. K. Biswas Department of Electronic & Electrical Communication Engineering Indian Institute of Technology, Kharagpur Lecture No. # 04 CPU Design: Tirning & Control

More information

Research on the UHF RFID Channel Coding Technology based on Simulink

Research on the UHF RFID Channel Coding Technology based on Simulink Vol. 6, No. 7, 015 Research on the UHF RFID Channel Coding Technology based on Simulink Changzhi Wang Shanghai 0160, China Zhicai Shi* Shanghai 0160, China Dai Jian Shanghai 0160, China Li Meng Shanghai

More information

Module 3: Floyd, Digital Fundamental

Module 3: Floyd, Digital Fundamental Module 3: Lecturer : Yongsheng Gao Room : Tech - 3.25 Email : yongsheng.gao@griffith.edu.au Structure : 6 lectures 1 Tutorial Assessment: 1 Laboratory (5%) 1 Test (20%) Textbook : Floyd, Digital Fundamental

More information

Lecture 5: Gate Logic Logic Optimization

Lecture 5: Gate Logic Logic Optimization Lecture 5: Gate Logic Logic Optimization MAH, AEN EE271 Lecture 5 1 Overview Reading McCluskey, Logic Design Principles- or any text in boolean algebra Introduction We could design at the level of irsim

More information

Let s put together a Manual Processor

Let s put together a Manual Processor Lecture 14 Let s put together a Manual Processor Hardware Lecture 14 Slide 1 The processor Inside every computer there is at least one processor which can take an instruction, some operands and produce

More information

DESIGN AND VERIFICATION OF LSR OF THE MPLS NETWORK USING VHDL

DESIGN AND VERIFICATION OF LSR OF THE MPLS NETWORK USING VHDL IJVD: 3(1), 2012, pp. 15-20 DESIGN AND VERIFICATION OF LSR OF THE MPLS NETWORK USING VHDL Suvarna A. Jadhav 1 and U.L. Bombale 2 1,2 Department of Technology Shivaji university, Kolhapur, 1 E-mail: suvarna_jadhav@rediffmail.com

More information

Lecture 8: Synchronous Digital Systems

Lecture 8: Synchronous Digital Systems Lecture 8: Synchronous Digital Systems The distinguishing feature of a synchronous digital system is that the circuit only changes in response to a system clock. For example, consider the edge triggered

More information

Computer Systems Structure Main Memory Organization

Computer Systems Structure Main Memory Organization Computer Systems Structure Main Memory Organization Peripherals Computer Central Processing Unit Main Memory Computer Systems Interconnection Communication lines Input Output Ward 1 Ward 2 Storage/Memory

More information

CHAPTER 11: Flip Flops

CHAPTER 11: Flip Flops CHAPTER 11: Flip Flops In this chapter, you will be building the part of the circuit that controls the command sequencing. The required circuit must operate the counter and the memory chip. When the teach

More information

Gates, Circuits, and Boolean Algebra

Gates, Circuits, and Boolean Algebra Gates, Circuits, and Boolean Algebra Computers and Electricity A gate is a device that performs a basic operation on electrical signals Gates are combined into circuits to perform more complicated tasks

More information

Counters. Present State Next State A B A B 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0

Counters. Present State Next State A B A B 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0 ounter ounters ounters are a specific type of sequential circuit. Like registers, the state, or the flip-flop values themselves, serves as the output. The output value increases by one on each clock cycle.

More information

Exploiting Stateful Inspection of Network Security in Reconfigurable Hardware

Exploiting Stateful Inspection of Network Security in Reconfigurable Hardware Exploiting Stateful Inspection of Network Security in Reconfigurable Hardware Shaomeng Li, Jim Tørresen, Oddvar Søråsen Department of Informatics University of Oslo N-0316 Oslo, Norway {shaomenl, jimtoer,

More information

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180B Lab 7: MISP Processor Design Spring 1995

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180B Lab 7: MISP Processor Design Spring 1995 UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering EEC180B Lab 7: MISP Processor Design Spring 1995 Objective: In this lab, you will complete the design of the MISP processor,

More information

Chapter 2 Logic Gates and Introduction to Computer Architecture

Chapter 2 Logic Gates and Introduction to Computer Architecture Chapter 2 Logic Gates and Introduction to Computer Architecture 2.1 Introduction The basic components of an Integrated Circuit (IC) is logic gates which made of transistors, in digital system there are

More information

DIGITAL-TO-ANALOGUE AND ANALOGUE-TO-DIGITAL CONVERSION

DIGITAL-TO-ANALOGUE AND ANALOGUE-TO-DIGITAL CONVERSION DIGITAL-TO-ANALOGUE AND ANALOGUE-TO-DIGITAL CONVERSION Introduction The outputs from sensors and communications receivers are analogue signals that have continuously varying amplitudes. In many systems

More information

So far we have investigated combinational logic for which the output of the logic devices/circuits depends only on the present state of the inputs.

So far we have investigated combinational logic for which the output of the logic devices/circuits depends only on the present state of the inputs. equential Logic o far we have investigated combinational logic for which the output of the logic devices/circuits depends only on the present state of the inputs. In sequential logic the output of the

More information

Memory Elements. Combinational logic cannot remember

Memory Elements. Combinational logic cannot remember Memory Elements Combinational logic cannot remember Output logic values are function of inputs only Feedback is needed to be able to remember a logic value Memory elements are needed in most digital logic

More information

Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop.

Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop. Objectives Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop. describe how such a flip-flop can be SET and RESET. describe the disadvantage

More information

Programming Logic controllers

Programming Logic controllers Programming Logic controllers Programmable Logic Controller (PLC) is a microprocessor based system that uses programmable memory to store instructions and implement functions such as logic, sequencing,

More information

Design and FPGA Implementation of a Novel Square Root Evaluator based on Vedic Mathematics

Design and FPGA Implementation of a Novel Square Root Evaluator based on Vedic Mathematics International Journal of Information & Computation Technology. ISSN 0974-2239 Volume 4, Number 15 (2014), pp. 1531-1537 International Research Publications House http://www. irphouse.com Design and FPGA

More information

Manchester Encoder-Decoder for Xilinx CPLDs

Manchester Encoder-Decoder for Xilinx CPLDs Application Note: CoolRunner CPLDs R XAPP339 (v.3) October, 22 Manchester Encoder-Decoder for Xilinx CPLDs Summary This application note provides a functional description of VHDL and Verilog source code

More information

Flip-Flops, Registers, Counters, and a Simple Processor

Flip-Flops, Registers, Counters, and a Simple Processor June 8, 22 5:56 vra235_ch7 Sheet number Page number 349 black chapter 7 Flip-Flops, Registers, Counters, and a Simple Processor 7. Ng f3, h7 h6 349 June 8, 22 5:56 vra235_ch7 Sheet number 2 Page number

More information

ETEC 2301 Programmable Logic Devices. Chapter 10 Counters. Shawnee State University Department of Industrial and Engineering Technologies

ETEC 2301 Programmable Logic Devices. Chapter 10 Counters. Shawnee State University Department of Industrial and Engineering Technologies ETEC 2301 Programmable Logic Devices Chapter 10 Counters Shawnee State University Department of Industrial and Engineering Technologies Copyright 2007 by Janna B. Gallaher Asynchronous Counter Operation

More information

Verification of Triple Modular Redundancy (TMR) Insertion for Reliable and Trusted Systems

Verification of Triple Modular Redundancy (TMR) Insertion for Reliable and Trusted Systems Verification of Triple Modular Redundancy (TMR) Insertion for Reliable and Trusted Systems Melanie Berg 1, Kenneth LaBel 2 1.AS&D in support of NASA/GSFC Melanie.D.Berg@NASA.gov 2. NASA/GSFC Kenneth.A.LaBel@NASA.gov

More information

FPGAs for High-Performance DSP Applications

FPGAs for High-Performance DSP Applications White Paper FPGAs for High-Performance DSP Applications This white paper compares the performance of DSP applications in Altera FPGAs with popular DSP processors as well as competitive FPGA offerings.

More information

9/14/2011 14.9.2011 8:38

9/14/2011 14.9.2011 8:38 Algorithms and Implementation Platforms for Wireless Communications TLT-9706/ TKT-9636 (Seminar Course) BASICS OF FIELD PROGRAMMABLE GATE ARRAYS Waqar Hussain firstname.lastname@tut.fi Department of Computer

More information

GETTING STARTED WITH PROGRAMMABLE LOGIC DEVICES, THE 16V8 AND 20V8

GETTING STARTED WITH PROGRAMMABLE LOGIC DEVICES, THE 16V8 AND 20V8 GETTING STARTED WITH PROGRAMMABLE LOGIC DEVICES, THE 16V8 AND 20V8 Robert G. Brown All Rights Reserved August 25, 2000 Alta Engineering 58 Cedar Lane New Hartford, CT 06057-2905 (860) 489-8003 www.alta-engineering.com

More information

Sequential Logic. (Materials taken from: Principles of Computer Hardware by Alan Clements )

Sequential Logic. (Materials taken from: Principles of Computer Hardware by Alan Clements ) Sequential Logic (Materials taken from: Principles of Computer Hardware by Alan Clements ) Sequential vs. Combinational Circuits Combinatorial circuits: their outputs are computed entirely from their present

More information

Lecture 12: More on Registers, Multiplexers, Decoders, Comparators and Wot- Nots

Lecture 12: More on Registers, Multiplexers, Decoders, Comparators and Wot- Nots Lecture 12: More on Registers, Multiplexers, Decoders, Comparators and Wot- Nots Registers As you probably know (if you don t then you should consider changing your course), data processing is usually

More information

Architectural Level Power Consumption of Network on Chip. Presenter: YUAN Zheng

Architectural Level Power Consumption of Network on Chip. Presenter: YUAN Zheng Architectural Level Power Consumption of Network Presenter: YUAN Zheng Why Architectural Low Power Design? High-speed and large volume communication among different parts on a chip Problem: Power consumption

More information

Introduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems

Introduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems Harris Introduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems David Harris Harvey Mudd College David_Harris@hmc.edu Based on EE271 developed by Mark Horowitz, Stanford University MAH

More information

Central Processing Unit

Central Processing Unit Chapter 4 Central Processing Unit 1. CPU organization and operation flowchart 1.1. General concepts The primary function of the Central Processing Unit is to execute sequences of instructions representing

More information

Open Flow Controller and Switch Datasheet

Open Flow Controller and Switch Datasheet Open Flow Controller and Switch Datasheet California State University Chico Alan Braithwaite Spring 2013 Block Diagram Figure 1. High Level Block Diagram The project will consist of a network development

More information

Note monitors controlled by analog signals CRT monitors are controlled by analog voltage. i. e. the level of analog signal delivered through the

Note monitors controlled by analog signals CRT monitors are controlled by analog voltage. i. e. the level of analog signal delivered through the DVI Interface The outline: The reasons for digital interface of a monitor the transfer from VGA to DVI. DVI v. analog interface. The principles of LCD control through DVI interface. The link between DVI

More information

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com Best Practises for LabVIEW FPGA Design Flow 1 Agenda Overall Application Design Flow Host, Real-Time and FPGA LabVIEW FPGA Architecture Development FPGA Design Flow Common FPGA Architectures Testing and

More information

All Programmable Logic. Hans-Joachim Gelke Institute of Embedded Systems. Zürcher Fachhochschule

All Programmable Logic. Hans-Joachim Gelke Institute of Embedded Systems. Zürcher Fachhochschule All Programmable Logic Hans-Joachim Gelke Institute of Embedded Systems Institute of Embedded Systems 31 Assistants 10 Professors 7 Technical Employees 2 Secretaries www.ines.zhaw.ch Research: Education:

More information

Computers. Hardware. The Central Processing Unit (CPU) CMPT 125: Lecture 1: Understanding the Computer

Computers. Hardware. The Central Processing Unit (CPU) CMPT 125: Lecture 1: Understanding the Computer Computers CMPT 125: Lecture 1: Understanding the Computer Tamara Smyth, tamaras@cs.sfu.ca School of Computing Science, Simon Fraser University January 3, 2009 A computer performs 2 basic functions: 1.

More information

MP3 Player CSEE 4840 SPRING 2010 PROJECT DESIGN. zl2211@columbia.edu. ml3088@columbia.edu

MP3 Player CSEE 4840 SPRING 2010 PROJECT DESIGN. zl2211@columbia.edu. ml3088@columbia.edu MP3 Player CSEE 4840 SPRING 2010 PROJECT DESIGN Zheng Lai Zhao Liu Meng Li Quan Yuan zl2215@columbia.edu zl2211@columbia.edu ml3088@columbia.edu qy2123@columbia.edu I. Overview Architecture The purpose

More information

VLSI IMPLEMENTATION OF INTERNET CHECKSUM CALCULATION FOR 10 GIGABIT ETHERNET

VLSI IMPLEMENTATION OF INTERNET CHECKSUM CALCULATION FOR 10 GIGABIT ETHERNET VLSI IMPLEMENTATION OF INTERNET CHECKSUM CALCULATION FOR 10 GIGABIT ETHERNET Tomas Henriksson, Niklas Persson and Dake Liu Department of Electrical Engineering, Linköpings universitet SE-581 83 Linköping

More information

PROGRAMMABLE LOGIC CONTROLLERS Unit code: A/601/1625 QCF level: 4 Credit value: 15 TUTORIAL OUTCOME 2 Part 1

PROGRAMMABLE LOGIC CONTROLLERS Unit code: A/601/1625 QCF level: 4 Credit value: 15 TUTORIAL OUTCOME 2 Part 1 UNIT 22: PROGRAMMABLE LOGIC CONTROLLERS Unit code: A/601/1625 QCF level: 4 Credit value: 15 TUTORIAL OUTCOME 2 Part 1 This work covers part of outcome 2 of the Edexcel standard module. The material is

More information

Memory Testing. Memory testing.1

Memory Testing. Memory testing.1 Memory Testing Introduction Memory Architecture & Fault Models Test Algorithms DC / AC / Dynamic Tests Built-in Self Testing Schemes Built-in Self Repair Schemes Memory testing.1 Memory Market Share in

More information

ON SUITABILITY OF FPGA BASED EVOLVABLE HARDWARE SYSTEMS TO INTEGRATE RECONFIGURABLE CIRCUITS WITH HOST PROCESSING UNIT

ON SUITABILITY OF FPGA BASED EVOLVABLE HARDWARE SYSTEMS TO INTEGRATE RECONFIGURABLE CIRCUITS WITH HOST PROCESSING UNIT 216 ON SUITABILITY OF FPGA BASED EVOLVABLE HARDWARE SYSTEMS TO INTEGRATE RECONFIGURABLE CIRCUITS WITH HOST PROCESSING UNIT *P.Nirmalkumar, **J.Raja Paul Perinbam, @S.Ravi and #B.Rajan *Research Scholar,

More information

Memory Basics. SRAM/DRAM Basics

Memory Basics. SRAM/DRAM Basics Memory Basics RAM: Random Access Memory historically defined as memory array with individual bit access refers to memory with both Read and Write capabilities ROM: Read Only Memory no capabilities for

More information

STEPPER MOTOR SPEED AND POSITION CONTROL

STEPPER MOTOR SPEED AND POSITION CONTROL STEPPER MOTOR SPEED AND POSITION CONTROL Group 8: Subash Anigandla Hemanth Rachakonda Bala Subramanyam Yannam Sri Divya Krovvidi Instructor: Dr. Jens - Peter Kaps ECE 511 Microprocessors Fall Semester

More information

Computer Network. Interconnected collection of autonomous computers that are able to exchange information

Computer Network. Interconnected collection of autonomous computers that are able to exchange information Introduction Computer Network. Interconnected collection of autonomous computers that are able to exchange information No master/slave relationship between the computers in the network Data Communications.

More information

Quiz for Chapter 6 Storage and Other I/O Topics 3.10

Quiz for Chapter 6 Storage and Other I/O Topics 3.10 Date: 3.10 Not all questions are of equal difficulty. Please review the entire quiz first and then budget your time carefully. Name: Course: Solutions in Red 1. [6 points] Give a concise answer to each

More information

White Paper Utilizing Leveling Techniques in DDR3 SDRAM Memory Interfaces

White Paper Utilizing Leveling Techniques in DDR3 SDRAM Memory Interfaces White Paper Introduction The DDR3 SDRAM memory architectures support higher bandwidths with bus rates of 600 Mbps to 1.6 Gbps (300 to 800 MHz), 1.5V operation for lower power, and higher densities of 2

More information

Systems I: Computer Organization and Architecture

Systems I: Computer Organization and Architecture Systems I: Computer Organization and Architecture Lecture 9 - Register Transfer and Microoperations Microoperations Digital systems are modular in nature, with modules containing registers, decoders, arithmetic

More information

A New Paradigm for Synchronous State Machine Design in Verilog

A New Paradigm for Synchronous State Machine Design in Verilog A New Paradigm for Synchronous State Machine Design in Verilog Randy Nuss Copyright 1999 Idea Consulting Introduction Synchronous State Machines are one of the most common building blocks in modern digital

More information

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai 2007. Jens Onno Krah

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai 2007. Jens Onno Krah (DSF) Soft Core Prozessor NIOS II Stand Mai 2007 Jens Onno Krah Cologne University of Applied Sciences www.fh-koeln.de jens_onno.krah@fh-koeln.de NIOS II 1 1 What is Nios II? Altera s Second Generation

More information

Lecture 7: Clocking of VLSI Systems

Lecture 7: Clocking of VLSI Systems Lecture 7: Clocking of VLSI Systems MAH, AEN EE271 Lecture 7 1 Overview Reading Wolf 5.3 Two-Phase Clocking (good description) W&E 5.5.1, 5.5.2, 5.5.3, 5.5.4, 5.5.9, 5.5.10 - Clocking Note: The analysis

More information

The 104 Duke_ACC Machine

The 104 Duke_ACC Machine The 104 Duke_ACC Machine The goal of the next two lessons is to design and simulate a simple accumulator-based processor. The specifications for this processor and some of the QuartusII design components

More information

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to:

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to: 55 Topic 3 Computer Performance Contents 3.1 Introduction...................................... 56 3.2 Measuring performance............................... 56 3.2.1 Clock Speed.................................

More information

Computer Architecture

Computer Architecture Computer Architecture Random Access Memory Technologies 2015. április 2. Budapest Gábor Horváth associate professor BUTE Dept. Of Networked Systems and Services ghorvath@hit.bme.hu 2 Storing data Possible

More information

Introduction to Z-Wave. An Introductory Guide to Z-Wave Technology

Introduction to Z-Wave. An Introductory Guide to Z-Wave Technology Introduction to Z-Wave An Introductory Guide to Z-Wave Technology Table of Contents Z-Wave Overview and Functionality... 3 Z-Wave Technology Quick Overview... 3 Radio Specifications... 3 Network and Topology...

More information

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING NATIONAL INSTITUTE OF TECHNOLOGY ROURKELA EFFICIENT ROUTER DESIGN FOR NETWORK ON CHIP

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING NATIONAL INSTITUTE OF TECHNOLOGY ROURKELA EFFICIENT ROUTER DESIGN FOR NETWORK ON CHIP DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING NATIONAL INSTITUTE OF TECHNOLOGY ROURKELA EFFICIENT ROUTER DESIGN FOR NETWORK ON CHIP SWAPNA S 2013 EFFICIENT ROUTER DESIGN FOR NETWORK ON CHIP A

More information

Revision of Lecture Eighteen

Revision of Lecture Eighteen Revision of Lecture Eighteen Previous lecture has discussed equalisation using Viterbi algorithm: Note similarity with channel decoding using maximum likelihood sequence estimation principle It also discusses

More information

Efficient Built-In NoC Support for Gather Operations in Invalidation-Based Coherence Protocols

Efficient Built-In NoC Support for Gather Operations in Invalidation-Based Coherence Protocols Universitat Politècnica de València Master Thesis Efficient Built-In NoC Support for Gather Operations in Invalidation-Based Coherence Protocols Author: Mario Lodde Advisor: Prof. José Flich Cardo A thesis

More information

Hardware Implementation of Improved Adaptive NoC Router with Flit Flow History based Load Balancing Selection Strategy

Hardware Implementation of Improved Adaptive NoC Router with Flit Flow History based Load Balancing Selection Strategy Hardware Implementation of Improved Adaptive NoC Rer with Flit Flow History based Load Balancing Selection Strategy Parag Parandkar 1, Sumant Katiyal 2, Geetesh Kwatra 3 1,3 Research Scholar, School of

More information

CS250 VLSI Systems Design Lecture 8: Memory

CS250 VLSI Systems Design Lecture 8: Memory CS250 VLSI Systems esign Lecture 8: Memory John Wawrzynek, Krste Asanovic, with John Lazzaro and Yunsup Lee (TA) UC Berkeley Fall 2010 CMOS Bistable 1 0 Flip State 0 1 Cross-coupled inverters used to hold

More information

Analysis of Compression Algorithms for Program Data

Analysis of Compression Algorithms for Program Data Analysis of Compression Algorithms for Program Data Matthew Simpson, Clemson University with Dr. Rajeev Barua and Surupa Biswas, University of Maryland 12 August 3 Abstract Insufficient available memory

More information

Modeling Latches and Flip-flops

Modeling Latches and Flip-flops Lab Workbook Introduction Sequential circuits are digital circuits in which the output depends not only on the present input (like combinatorial circuits), but also on the past sequence of inputs. In effect,

More information

An Extension to DNA Based Fredkin Gate Circuits: Design of Reversible Sequential Circuits using Fredkin Gates

An Extension to DNA Based Fredkin Gate Circuits: Design of Reversible Sequential Circuits using Fredkin Gates An Extension to DNA Based Fredkin Gate Circuits: Design of Reversible Sequential Circuits using Fredkin Gates Himanshu Thapliyal and M.B Srinivas (thapliyalhimanshu@yahoo.com, srinivas@iiit.net) Center

More information

Introduction to Digital System Design

Introduction to Digital System Design Introduction to Digital System Design Chapter 1 1 Outline 1. Why Digital? 2. Device Technologies 3. System Representation 4. Abstraction 5. Development Tasks 6. Development Flow Chapter 1 2 1. Why Digital

More information

Multiplexers Two Types + Verilog

Multiplexers Two Types + Verilog Multiplexers Two Types + Verilog ENEE 245: Digital Circuits and ystems Laboratory Lab 7 Objectives The objectives of this laboratory are the following: To become familiar with continuous ments and procedural

More information

2 SYSTEM DESCRIPTION TECHNIQUES

2 SYSTEM DESCRIPTION TECHNIQUES 2 SYSTEM DESCRIPTION TECHNIQUES 2.1 INTRODUCTION Graphical representation of any process is always better and more meaningful than its representation in words. Moreover, it is very difficult to arrange

More information

Contents COUNTER. Unit III- Counters

Contents COUNTER. Unit III- Counters COUNTER Contents COUNTER...1 Frequency Division...2 Divide-by-2 Counter... 3 Toggle Flip-Flop...3 Frequency Division using Toggle Flip-flops...5 Truth Table for a 3-bit Asynchronous Up Counter...6 Modulo

More information

Module 5. Broadcast Communication Networks. Version 2 CSE IIT, Kharagpur

Module 5. Broadcast Communication Networks. Version 2 CSE IIT, Kharagpur Module 5 Broadcast Communication Networks Lesson 1 Network Topology Specific Instructional Objectives At the end of this lesson, the students will be able to: Specify what is meant by network topology

More information

Distributed Elastic Switch Architecture for efficient Networks-on-FPGAs

Distributed Elastic Switch Architecture for efficient Networks-on-FPGAs Distributed Elastic Switch Architecture for efficient Networks-on-FPGAs Antoni Roca, Jose Flich Parallel Architectures Group Universitat Politechnica de Valencia (UPV) Valencia, Spain Giorgos Dimitrakopoulos

More information

7a. System-on-chip design and prototyping platforms

7a. System-on-chip design and prototyping platforms 7a. System-on-chip design and prototyping platforms Labros Bisdounis, Ph.D. Department of Computer and Communication Engineering 1 What is System-on-Chip (SoC)? System-on-chip is an integrated circuit

More information

Chapter 4 System Unit Components. Discovering Computers 2012. Your Interactive Guide to the Digital World

Chapter 4 System Unit Components. Discovering Computers 2012. Your Interactive Guide to the Digital World Chapter 4 System Unit Components Discovering Computers 2012 Your Interactive Guide to the Digital World Objectives Overview Differentiate among various styles of system units on desktop computers, notebook

More information