A Low Power Design of Gray and T0 Codecs for the Address Bus Encoding for System Level Power Optimization
|
|
- Austin Hutchinson
- 5 years ago
- Views:
Transcription
1 A Low Power Design of Gray and T0 Codecs for the Address Bus Encoding for System Level Power Optimization Prabhat K. Saraswat, Ghazal Haghani and Appiah Kubi Bernard Advanced Learning and Research Institute, ALaRI, University of Lugano, Switzerland ABSTRACT This report describes our attempt to design the Gray and T0 codecs to be used to encode the bits to be sent on the processor-memory address bus. Since switching is one of the most important contributors to the power consumption of VLSI circuits, it is imperative to encode the bits in such a way that the switching activity on the buses are reduced. However, it should also be understood that encoding does not always reduces power. The trade offs between power utilization of the codec hardware and the power reduction due to lessening of switching transitions has also been understood. Different codecs may perform differently for different address sequences. We have generated the sequences of addresses of specified sequentiality and evaluated the performance of both codecs. The codecs are designed and synthesized using VHDL/Synopsis Tools. The VHDL models are then simulated in order to measure the dynamic power consumed by them when the bits are encoded and decoded. The total power including the power consumed by the bus is calculated. Various comparisons are made with the uncoded binary scheme. An optimum bus capacitance is also calculated which makes the usage of codecs beneficial. We have also tried to implement another scheme where the bus lines are interchanged in order to reduce the power consumption due to crosstalk. The results obtained are discussed and explained in the report. Keywords: Gray Encoding, Zero Transition Encoding, Bus load 1. BUS ENCODING FUNDAMENTALS - GRAY AND T0 CODECS Bandwidth of data transfers have increased considerably due to the high speed needed between microprocessors and system interfaces. Considerable amount of power is needed at the I/O pins of a microprocessor due to intrinsic capacitance of the bus lines. By minimizing the switching transitions on the system level bus lines, dramatic optimization of average power consumption can be achieved. There are various bus encoding schemes that achieve this purpose, eg. Gray code and T0 code Gray Encoding It has been observed that the addresses generated by a program are often sequential in nature. The simplest way to encode the generated addresses is binary, which results in a lot of transitions thus increasing the switching activity. One of the often cited solutions for this was proposed by Su, Tsui and Despain 2 to use gray encoding to minimize the number of transitions. Gray encoding allows for only a single transition for consecutive addresses T0 Encoding The sequentiality of the addresses is transferred to the subsystem by adding an additional redundant line to the bus in order to avoid transfer of consecutive addresses. The redundant line is set to zero when 2 of the addresses in the bus are consecutive, this prevents unnecessary switching, and the receiver then calculates the new address. As it is clearly visible, the T0 code guarantees zero transitions as its asymptotic performance for in-sequence addresses 1 2. PROBLEM STATEMENT AND MOTIVATION An 16 bit address bus is assumed. Two bus encoding schemes, gray and T0 have to be implemented using VHDL. The program accesses to memory has to be modeled by generating address streams of varying sequentiality. The codecs are evaluated on the basis of switching activity and power consumption. Synthesization and evaluation of codec power consumption is done by using synopsis power compiler. The minimum bus load has to be calculated which makes the bus encoding convenient. The main motivation for the project is to be able to appreciate and understand the effectiveness of various encoding schemes for the address streams of different sequentiality. Further author information: (Send correspondence to Prabhat Kumar Saraswat) Prabhat Kumar Saraswat: prabhat.saraswat@alari.ch, Telephone:
2 3. DESIGN AND IMPLEMENTATION OF VHDL MODELS The first and foremost step is to design the VHDL models effectively to reduce the overheads due to the hardware of codec itself. The gray code and T0 codec were implemented. The gray encoding algorithm is implemented by comparing each bit with the next bit in the generated bit stream. For example, if the generated bit stream is represented as B,the gray code will be a concatenation of B[i] xor B[i+1] where i is 0...n-1. The advantage of using gray algorithm before sending the data to the bus is that we have less switching transitions and consequently less power usage. As the algorithm for encoding and decoding data is the same we can use same hardware to encode and decode the data. The hardware configuration for gray encoder and decoder implemented in VHDL is shown in figure1. The zero transition codec algorithm is very efficient for purely sequential addressing mode, In this case we need to define one extra line in our connection paths to use it as a flag. When system wants to access to sequential addresses in memory we just freeze the first address and by setting the flag receiver is informed to calculate the addresses from the base address. The hardware configuration for T0 coded implemented in VHDL is shown below: Figure 1. Implemented Hardware for GRAY and T0 CODEC respectively The corresponding VHDL codes can be seen in the attached appendix with this report. 4. ADDRESS SEQUENCE GENERATION WITH A SPECIFIED SEQUENTIALITY We have attempted to generate numbers with a specified sequentiality value. The objective of this attempt is to model the pattern of memory accesses from a processor when a software is run on it. The software in itself might be containing some loops where the sequential memory locations are accessed. However, there might be cases (branches etc.) when the memory accesses are not sequential. The problem to be addressed is how to model those cases when the accesses are not sequential. How to simulate those cases and generate the resulting address streams, when a specific value, say sequentiality percentage is defined. One primitive attempt to model this problem would be described here. However, this method is definitely not the best way to generate, but it is hoped that it would raise some questions and issues that would allow for further refinement and understanding of this problem. Our approach takes shape along with a basic argument that defines non sequentiality. Non sequentiality, as we can presume, is observed when a totally chaotic (random) distribution of numbers is generated. It refers to the stream generated when there is no correlation between the numbers. Thus we need a random number generator function to be able to generate such a stream. Let the minimum address accessed is 0, and the max address which can be reached is NUM.We have coded a function which generates a random number according to a uniform distribution: X is a Uniform Distirbution between (0, NUM) We will now define two parameters a and b which would be defining the sequentiality levels in generated numbers. The number a and b are related as: b = 1 a Both a and b have ranges between 0 and 1 and the value of a would define the sequentiality percentage. The final number generated could be calculated by a simple function. Let I(n) represent a sequential stream from 0 to 2
3 NUM and X(n) define a uniformly random stream from 0 to NUM as mentioned in the aforementioned paragraph. The number to be generated was defined as: gennum = a I (n) + b X(n) The function was implemented in a CPP program and following graphs were generated by varying the values of a from 1 to 0 in steps of 0.1. Thus a purely sequential stream was gradually made non sequential. Thus 50% sequential occurs at a=0.5. The graphs of a sample generated streams for various sequentiality values can be seen in the attached appendix. 5. DESCRIPTION OF THE SIMULATION ENVIRONMENT AND METHODOLOGY The simulation methodology followed can be enumerated into following steps. This is further elucidated by a figure showing some of the important components of the simulation and reports generation. Various steps involved are as follows: 1. The VHDL files are written corresponding to Gray code decoder, encoder and T0 code decoder and encoder. 2. Address streams corresponding to various sequentiality values were generated, corresponding to various sequentiality values from 10 (purely sequential) to 0 (purely random). 3. The address streams are used to assign these values to the DIN signal of the encoder inputs of both T0 and Gray codec. This is achieved by automatically generating corresponding do files for the same. The outputs from the encoder modules forms the input for the decoders. The output of decoders are compared against the original stream to verify the behavioral correctness. 4. The test benches are also generated for the encoder and decoder of both Gray and T0 codecs using the generated address stream. The testbenches are generated concurrently with the do files in order to maintain a coherent behavior. This is done because the random numbers are calculated on the basis of a seed value which depends on the time of system and various other parameters. 5. The VHDL models are synthesized using design compiler. The testbenches are executed outside the DC shell to give a switching activity interchange format (SAIF) file. The switching activity is pre simulated with synthesized RTL model of codec and is attached to the testbench. 6. The reports corresponding to power consumption and switching activity are generated. The process is repeated for all the values of a from 10 to 0. It is also repeated for address corresponding to both bit addressable and byte addressable memory. The figure corresponds to the simulation environment and methodology: Figure 2. Simulation Environment Description 3
4 6. RESULTS This section will explain all the comparisons and results obtained out of simulations. The assumptions would also be explained at places where they have been used Switching Activity Reductions The hamming distance between the consecutive codes were calculated and added inorder to estimate the number of transitions for each codec. We have done the comparisons between the binary coded bus and gray coded bus, the second comparison is between binary and T0, and third is between T0 and gray encoded. The graphs are presented below: The graphs clearly indicate the superiority of the various coding schemes over the binary Figure 3. Total transitions for various address sequentialities comparing between (a)bin-gray, (b)bin-t0 and (c)t0-gray coded bus. The values on X axis indicates the value of b in the equation mentioned in the previous section. The small values of b corresponds to the address streams of high sequentiality. We can see that the gray transitions are nearly half the binary transitions for the first value of b=0 which corresponds to a purely sequential address stream. It should also be noted that as the sequentiality decreases the reductions in number of transitions due to gray code also decreases. It can be seen that towards the lower end of x axis (high values of b) the reductions due to gray encoding are small and often incoherent. This may be attributed to the highly random nature of the address streams. In case of T0 codec, for the total sequential case, the number of transitions is 1, thus this makes it a best choice for the streams having a very high degree of sequentiality. It is interesting to note that for the other cases when the sequentiality is 70 % or lower, the T0 codec actually performs worse than the gray code, in terms of number of transitions observed. This can be clearly observed from the third graph shown on the extreme left which shows the comparison between T0 and Gray codecs. We have also computed the total number of Bit Transitions on bus for various encoding schemes as compared wrt. the sequentiality values. The graphs corresponding to the Gray and T0 coded bus is shown below. It should be noted that the 17th bit in the T0 coded bus represents the INC which doesn t change much as the changes occur only when there is a change in sequentiality. Often the lines of the buses does not have same capacitance. 2 The bus lines towards the inner regions have high capacitance. Thus it would be beneficial if the transitions on those lines are made less. In the relevant literature in this context, there is also a concern about power consumption due to crosstalk between lines, so it is advised that the lines which do not have high number of transitions should be placed between the lines containing alot of transitions. We also have tried to do something like this by pre profiling for various streams to observe which of the bits are changing the most. It should be noted that the higher end bits are not changed because the generated address streams was not full 16 bits long. Figure 4. Transition profiles of various bits in Gray and T0 encoded bus 4
5 6.2. Power Consumption results from Synopsis Power Compiler The power consumption due to the codec hardware was evaluated using the power compiler. The switching activity was generated using the pregenerated testbenches corresponding to various address streams. We have done a simulation based estimation of SA, where a Switching Activity Interchange Format (SAIF) file is generated by simulating the RTL code with the testbench outside the dc shell and applying the SA to the design. The switching power is measured for both encoder and decoder of T0 and Gray codes respectively. We have calculated the power for two variants of memories, bit addressable and byte addressable. This is done by regulating the address streams generated for both types of memories. The results below are for encoder and decoder for Gray and T0 respectively. The quantitative total power calculation is shown in the next section. Figure 5. Switching Power Consumption for enc and dec of Gray and T0 respectively. It is clearly seen from the graphs that for highly sequential address streams, the switching power consumption is less. This concurs with the earlier observation that the transitions are less for sequential streams. When the streams are not sequential, the power consumption patterns are quite unpredictable as can be clearly observed from the graphs towards the higher values of b in x-axis. The power consumption of the T0 codec is more than the gray codec much owing to the increased complexity of the T0 s circuit Power Consumption Calculations due to Codecs We would present the equations derived to calculate total power consumption of codecs. Let us define P G tot to be the total power consumption for Gray codec. The total power consumption is actually the sum of two factors, the power consumed by the codec and the power consumed by the bus lines. We would be referring to these values as P G codec and P G bus from now on. P G codec is sum of the contributions due to both encoder and decoder thus: P G codec = P G enc + P G dec P G codec = P G enc dynamic + P G enc static + P G dec dynamic + P G dec static The values for the aforementioned parameters are easily taken out from the power compiler s report. It is assumed that the total number of bus lines are same as number of address bits. All the bus lines have different values of capacitance. 2 The power consumed can be modeled by a simple equation corresponding to the energy consumed by a capacitor. The switching activity factor corresponding to each line also creeps in. The bus consumption for all 16 lines can be showed by the following equation: where V = voltage of the binary levels F = Frequency of the circuit (here 100 MHz) C i = Capacitance for the bus line i S i = Switching activity for the bus line i P G bus = 1 2 V 2 F i=0 C is i However for the ease of calculation and tractability it can be safely assumed that i, C i = C eq. The capacitance of all buses are assumed to be a constant value C eq. Thus the bus equation finally becomes: thus P G bus = 1 2 V 2 F C eq i=0 S i P G tot = P G codec + P G bus = P G enc dynamic + P G enc static + P G dec dynamic + P G dec static V 2 F C eq i=0 S i 5
6 Similarly for the T0 Codec, we get the same equation except the number of bus lines are 17. Thus the equation is: P T 0 tot = P T 0 codec + P T 0 bus = P T 0 enc dynamic + P T 0 enc static + P T 0 dec dynamic + P T 0 dec static V 2 F C eq 16 i=0 S i 7. OPTIMUM BUS LOAD CALCULATIONS The bus load is the capacitance of the bus lines. The higher is the load the higher is the power consumed per transition. This means that if we have a high load the reduction that is obtained after encoding the information (thus reducing the SA) in terms of power is high. So the savings obtained with respect to the original design are high and one may have benefits even if an encoder and a decoder (that itself consumes power) is added. On the other side, if the bus has a very limited load, the reduction in terms of power when the SA (with the encoding) is minimized is limited, hence adding the power due to the codec may result in an increase of the global power w.r.t. the original design. Thus for the encoding to be convenient and keeping in mind above considerations the total power consumed by the codec should be less than the total power consumed without the codec hardware (with a simple binary scheme). As it has been calculated above, in the similar way, the power consumed in the unencoded binary stream is given by: P uncoded = 1 2 V 2 F C eq i=0 S un i where S un i is the switching activity due to binary transitions obtained using the simulations. For the encoding to be convenient and profitable following inequalities should be solved. For Gray Codec For T0 Codec P G tot < P uncoded P G codec V 2 F C eq i=0 S i < 1 2 V 2 F C eq i=0 S un i P T 0 tot < P uncoded P T 0 codec V 2 F C eq 16 i=0 S i < 1 2 V 2 F C eq 16 i=0 S un i The only unknown in both of the equations is C eq, which was calculated for both gray and T0 codecs. The calculations was done for only the bit addressable memory. The calculated values are shown below: Codec Gray T0 Opt Busload 42 pf 57 pf 8. CONCLUSIONS AND FUTURE WORK This report provided a comprehensive evaluation of two bus encoding schemes, Gray and Zero Transition for the system level power optimization. The overheads due to power consumptions by the hardware itself were understood. In the end an optimum bus load was calculated to make encoding convenient. The effect of interchange of bus lines on the crosstalk power consumption was also understood. One of the future works could be to model it in hardware and quantitatively evaluate the effect. It was also seen that the address sequentiality has a lot of role in the power consumption. Thus a logic block can be put before encoding which could arrange the generated address to support a particular encoding scheme. ACKNOWLEDGMENTS We would like to thank Prof. Enrico Macii and Prof. Alberto Macii for being so helpful both in and outside of class. The conversations helped us to understand the task at hand good enough and allowed us to explore new avenues. We would also like to thank each other for complementing each other so well during the project. REFERENCES 1. L. Benini, G. Micheli, E. Macii, D. Sciuto, and C. Silvano, Address bus encoding techniques for system-level power optimization, C. Y. T. C. L. Su and A. M. Despain, Saving power in the control path of embedded processors. IEEE Design and Test of Computers, Vol. 11, No. 4, pp , Winter 1994, With reference to Prof Machi s 6
Shift Invert Coding (SINV) for Low Power VLSI
Shift Invert oding (SINV) for Low Power VLSI Jayapreetha Natesan* and Damu Radhakrishnan State University of New York Department of Electrical and omputer Engineering New Paltz, NY, U.S. email: natesa76@newpaltz.edu
More informationPower Estimation of System-Level Buses for Microprocessor-Based Architectures: A Case Study
Power Estimation of System-Level Buses for Microprocessor-Based Architectures: A Case Study William Fornaciari Politecnico di Milano, DEI Milano (Italy) fornacia@elet.polimi.it Donatella Sciuto Politecnico
More informationBus Encoding Technique for hierarchical memory system Anne Pratoomtong and Weiping Liao
Bus Encoding Technique for hierarchical memory system Anne Pratoomtong and Weiping Liao Abstract In microprocessor-based systems, data and address buses are the core of the interface between a microprocessor
More informationAddress Bus Encoding Techniques for System-Level Power Optimization. Dip. di Automatica e Informatica. Dip. di Elettronica per l'automazione
Address Bus Encoding Techniques for System-Level Power Optimization Luca Benini $ Giovanni De Micheli $ Enrico Macii Donatella Sciuto z Cristina Silvano # z Politecnico di Milano Dip. di Elettronica e
More informationLow-Power Data Address Bus Encoding Method
Low-Power Data Address Bus Encoding Method Tsung-Hsi Weng, Wei-Hao Chiao, Jean Jyh-Jiun Shann, Chung-Ping Chung, and Jimmy Lu Dept. of Computer Science and Information Engineering, National Chao Tung University,
More informationReference Caching Using Unit Distance Redundant Codes for Activity Reduction on Address Buses
Reference Caching Using Unit Distance Redundant Codes for Activity Reduction on Address Buses Tony Givargis and David Eppstein Department of Information and Computer Science Center for Embedded Computer
More informationEfficient Power Reduction Techniques for Time Multiplexed Address Buses
Efficient Power Reduction Techniques for Time Multiplexed Address Buses Mahesh Mamidipaka enter for Embedded omputer Systems Univ. of alifornia, Irvine, USA maheshmn@cecs.uci.edu Nikil Dutt enter for Embedded
More informationBus Encoding Techniques for System- Level Power Optimization
Chapter 5 Bus Encoding Techniques for System- Level Power Optimization The switching activity on system-level buses is often responsible for a substantial fraction of the total power consumption for large
More informationArea Efficient, Low Power Array Multiplier for Signed and Unsigned Number. Chapter 3
Area Efficient, Low Power Array Multiplier for Signed and Unsigned Number Chapter 3 Area Efficient, Low Power Array Multiplier for Signed and Unsigned Number Chapter 3 3.1 Introduction The various sections
More informationRTL Power Estimation and Optimization
Power Modeling Issues RTL Power Estimation and Optimization Model granularity Model parameters Model semantics Model storage Model construction Politecnico di Torino Dip. di Automatica e Informatica RTL
More informationArchitectures and Synthesis Algorithms for Power-Efficient Bus Interfaces
IEEE TRANSACTIONS ON COMPUTER AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 19, NO. 9, SEPTEMBER 2000 969 Architectures and Synthesis Algorithms for Power-Efficient Bus Interfaces Luca Benini,
More informationHardware/Software Partitioning for SoCs. EECE Advanced Topics in VLSI Design Spring 2009 Brad Quinton
Hardware/Software Partitioning for SoCs EECE 579 - Advanced Topics in VLSI Design Spring 2009 Brad Quinton Goals of this Lecture Automatic hardware/software partitioning is big topic... In this lecture,
More informationPower Efficient Arithmetic Operand Encoding
Power Efficient Arithmetic Operand Encoding Eduardo Costa, Sergio Bampi José Monteiro UFRGS IST/INESC P. Alegre, Brazil Lisboa, Portugal ecosta,bampi@inf.ufrgs.br jcm@algos.inesc.pt Abstract This paper
More informationInformation Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay
Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture - 11 Coding Strategies and Introduction to Huffman Coding The Fundamental
More informationPower Aware Encoding for the Instruction Address Buses Using Program Constructs
Power Aware Encoding for the Instruction Address Buses Using Program Constructs Prakash Krishnamoorthy and Meghanad D. Wagh Abstract This paper examines the address traces produced by various program constructs.
More informationWhen addressing VLSI design most books start from a welldefined
Objectives An ASIC application MSDAP Analyze the application requirement System level setting of an application Define operation mode Define signals and pins Top level model Write a specification When
More informationAbridged Addressing: A Low Power Memory Addressing Strategy
Abridged Addressing: A Low Power Memory Addressing Strategy Preeti anjan Panda Department of Computer Science and Engineering Indian Institute of Technology Delhi Hauz Khas New Delhi 006 INDIA Abstract
More informationMemory Bus Encoding for Low Power: A Tutorial
Memory Bus Encoding for Low Power: A Tutorial Wei-Chung Cheng and Massoud Pedram University of Southern California Department of EE-Systems Los Angeles CA 90089 Outline Background Memory Bus Encoding Techniques
More informationBasic Processing Unit: Some Fundamental Concepts, Execution of a. Complete Instruction, Multiple Bus Organization, Hard-wired Control,
UNIT - 7 Basic Processing Unit: Some Fundamental Concepts, Execution of a Complete Instruction, Multiple Bus Organization, Hard-wired Control, Microprogrammed Control Page 178 UNIT - 7 BASIC PROCESSING
More informationEfficient VLSI Huffman encoder implementation and its application in high rate serial data encoding
LETTER IEICE Electronics Express, Vol.14, No.21, 1 11 Efficient VLSI Huffman encoder implementation and its application in high rate serial data encoding Rongshan Wei a) and Xingang Zhang College of Physics
More informationAdaptive Low-Power Address Encoding Techniques Using Self-Organizing Lists
IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 11, NO.5, OCTOBER 2003 827 Adaptive Low-Power Address Encoding Techniques Using Self-Organizing Lists Mahesh N. Mamidipaka, Daniel
More informationCRYPTOGRAPHIC devices are widely used in applications
1036 IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 20, NO. 6, JUNE 2012 Secure Multipliers Resilient to Strong Fault-Injection Attacks Using Multilinear Arithmetic Codes Zhen Wang,
More informationOUTLINE Introduction Power Components Dynamic Power Optimization Conclusions
OUTLINE Introduction Power Components Dynamic Power Optimization Conclusions 04/15/14 1 Introduction: Low Power Technology Process Hardware Architecture Software Multi VTH Low-power circuits Parallelism
More informationHardware Modeling using Verilog Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur
Hardware Modeling using Verilog Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 01 Introduction Welcome to the course on Hardware
More informationImplementation of Crosstalk Elimination Using Digital Patterns Methodology
Implementation of Crosstalk Elimination Using Digital Patterns Methodology Kolli Kalpana M.Tech Student Department of ECE Nova College of Engineering and Technology, Ibrahimpatnam, Vijayawada, Krishna,
More informationstructure syntax different levels of abstraction
This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital
More informationHere is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this
This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital
More informationPerformance of Constant Addition Using Enhanced Flagged Binary Adder
Performance of Constant Addition Using Enhanced Flagged Binary Adder Sangeetha A UG Student, Department of Electronics and Communication Engineering Bannari Amman Institute of Technology, Sathyamangalam,
More informationANADOLU UNIVERSITY DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING. EEM Digital Systems II
ANADOLU UNIVERSITY DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EEM 334 - Digital Systems II LAB 1 - INTRODUCTION TO XILINX ISE SOFTWARE AND FPGA 1. PURPOSE In this lab, after you learn to use
More informationVHDL for Complex Designs
ELEC 379 : DESIGN OF DIGITAL AND MICROCOMPUTER SYSTEMS 1998/99 WINTER SESSION, TERM 2 VHDL for Complex Designs This lecture covers VHDL features that are useful when designing complex logic circuits. After
More informationVHDL for Synthesis. Course Description. Course Duration. Goals
VHDL for Synthesis Course Description This course provides all necessary theoretical and practical know how to write an efficient synthesizable HDL code through VHDL standard language. The course goes
More informationTHE use of intellectual proprietary components, such as
554 IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 6, NO. 4, DECEMBER 1998 Power Optimization of Core-Based Systems by Address Bus Encoding Luca Benini, Giovanni De Micheli, Fellow,
More informationMARIE: An Introduction to a Simple Computer
MARIE: An Introduction to a Simple Computer 4.2 CPU Basics The computer s CPU fetches, decodes, and executes program instructions. The two principal parts of the CPU are the datapath and the control unit.
More informationChapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics
Chapter 4 Objectives Learn the components common to every modern computer system. Chapter 4 MARIE: An Introduction to a Simple Computer Be able to explain how each component contributes to program execution.
More informationDESIGN AND IMPLEMENTATION OF SDR SDRAM CONTROLLER IN VHDL. Shruti Hathwalia* 1, Meenakshi Yadav 2
ISSN 2277-2685 IJESR/November 2014/ Vol-4/Issue-11/799-807 Shruti Hathwalia et al./ International Journal of Engineering & Science Research DESIGN AND IMPLEMENTATION OF SDR SDRAM CONTROLLER IN VHDL ABSTRACT
More informationDesign for Test Methodology Case Study for Motorola C-5e DCP Using the Cadence Incisive Accelerator/Emulator
Design for Test Methodology Case Study for Motorola C-5e DCP Using the Cadence Incisive Accelerator/Emulator Justin Hernandez SA837/CORP/GSG ZAS37/justin.hernandez@motorola.com Philip Giangarra RU433/SPS/NCSG
More informationRTL LEVEL POWER OPTIMIZATION OF ETHERNET MEDIA ACCESS CONTROLLER
RTL LEVEL POWER OPTIMIZATION OF ETHERNET MEDIA ACCESS CONTROLLER V. Baskar 1 and K.V. Karthikeyan 2 1 VLSI Design, Sathyabama University, Chennai, India 2 Department of Electronics and Communication Engineering,
More informationBehavioral Array Mapping into Multiport Memories Targeting Low Power 3
Behavioral Array Mapping into Multiport Memories Targeting Low Power 3 Preeti Ranjan Panda and Nikil D. Dutt Department of Information and Computer Science University of California, Irvine, CA 92697-3425,
More informationLecture 4. VHDL Fundamentals. Required reading. Example: NAND Gate. Design Entity. Example VHDL Code. Design Entity
Required reading Lecture 4 VHDL Fundamentals P. Chu, RTL Hardware Design using VHDL Chapter 3, Basic Language Constructs of VHDL George Mason University 2 Example: NAND Gate Design Entity a b z a b z 0
More informationBUILDING BLOCKS OF A BASIC MICROPROCESSOR. Part 1 PowerPoint Format of Lecture 3 of Book
BUILDING BLOCKS OF A BASIC MICROPROCESSOR Part PowerPoint Format of Lecture 3 of Book Decoder Tri-state device Full adder, full subtractor Arithmetic Logic Unit (ALU) Memories Example showing how to write
More informationII. MOTIVATION AND IMPLEMENTATION
An Efficient Design of Modified Booth Recoder for Fused Add-Multiply operator Dhanalakshmi.G Applied Electronics PSN College of Engineering and Technology Tirunelveli dhanamgovind20@gmail.com Prof.V.Gopi
More informationAdvanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay
Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay Lecture 40 VLSI Design Verification: An Introduction Hello. Welcome to the advance
More information23. Digital Baseband Design
23. Digital Baseband Design Algorithm-to-VLSI Circuit Refinement (Floating Point) Tradeoff (SNR Loss, BER) (Fixed Point) VHDL, Verilog VHDL, Verilog Memory Control For I=0 to I=15 Sum = Sum + array[i]
More informationLecture 1: Introduction Course arrangements Recap of basic digital design concepts EDA tool demonstration
TKT-1426 Digital design for FPGA, 6cp Fall 2011 http://www.tkt.cs.tut.fi/kurssit/1426/ Tampere University of Technology Department of Computer Systems Waqar Hussain Lecture Contents Lecture 1: Introduction
More informationLecture 4. VHDL Fundamentals. George Mason University
Lecture 4 VHDL Fundamentals George Mason University Required reading P. Chu, RTL Hardware Design using VHDL Chapter 3, Basic Language Constructs of VHDL 2 Design Entity ECE 448 FPGA and ASIC Design with
More informationVisualizing Data Flow and Control Signaling Inside the Microprocessor
Visualizing Data Flow and Control Signaling Inside the Microprocessor Ms. Isha Sharma 1, Mrs. Neha Sharma 2, Mr. Jitender Chhabra 3 1 M.Tech. Scholar, SGTIET, Gurgaon. 2 Asst. Professor, SGTIET, Gurgaon
More informationISSN Vol.04,Issue.01, January-2016, Pages:
WWW.IJITECH.ORG ISSN 2321-8665 Vol.04,Issue.01, January-2016, Pages:0077-0082 Implementation of Data Encoding and Decoding Techniques for Energy Consumption Reduction in NoC GORANTLA CHAITHANYA 1, VENKATA
More informationChapter 4. MARIE: An Introduction to a Simple Computer
Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution.
More informationIBM 3850-Mass storage system
BM 385-Mass storage system by CLAYTON JOHNSON BM Corporation Boulder, Colorado SUMMARY BM's 385, a hierarchical storage system, provides random access to stored data with capacity ranging from 35 X 1()9
More informationDesign of a High-Level Data Link Controller
ECE 551 Course Project Design of a High-Level Data Link Controller Interim Report - Due Wednesday, November 28, 2001, 4:00 PM Final Report - Due Wednesday, December 12, 2001, 4:00 PM Project Teams and
More informationINTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY
INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY A PATH FOR HORIZING YOUR INNOVATIVE WORK DESIGN OF QUATERNARY ADDER FOR HIGH SPEED APPLICATIONS MS. PRITI S. KAPSE 1, DR.
More informationECE/CS Computer Design Lab Lab 1 - Completion by Sept 13. Lab 2 will be assigned during the 2nd week of September.
1 Design of the ALU ECE/CS 3710 - Computer Design Lab Lab 1 - Completion by Sept 13. Lab 2 will be assigned during the 2nd week of September. I. OVERVIEW The instruction set of the CR16 uses standard 16-bit
More information101-1 Under-Graduate Project Digital IC Design Flow
101-1 Under-Graduate Project Digital IC Design Flow Speaker: Ming-Chun Hsiao Adviser: Prof. An-Yeu Wu Date: 2012/9/25 ACCESS IC LAB Outline Introduction to Integrated Circuit IC Design Flow Verilog HDL
More informationELEC 691X/498X Broadcast Signal Transmission Winter 2018
ELEC 691X/498X Broadcast Signal Transmission Winter 2018 Instructor: DR. Reza Soleymani, Office: EV 5.125, Telephone: 848 2424 ext.: 4103. Office Hours: Wednesday, Thursday, 14:00 15:00 Slide 1 In this
More informationEncoding Scheme for Power Reduction in Network on Chip Links
RESEARCH ARICLE OPEN ACCESS Encoding Scheme for Power Reduction in Network on Chip Links Chetan S.Behere*, Somulu Gugulothu** *(Department of Electronics, YCCE, Nagpur-10 Email: chetanbehere@gmail.com)
More informationDeduction and Logic Implementation of the Fractal Scan Algorithm
Deduction and Logic Implementation of the Fractal Scan Algorithm Zhangjin Chen, Feng Ran, Zheming Jin Microelectronic R&D center, Shanghai University Shanghai, China and Meihua Xu School of Mechatronical
More informationLecture 3 Introduction to VHDL
CPE 487: Digital System Design Spring 2018 Lecture 3 Introduction to VHDL Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ 07030 1 Managing Design
More informationPrachi Sharma 1, Rama Laxmi 2, Arun Kumar Mishra 3 1 Student, 2,3 Assistant Professor, EC Department, Bhabha College of Engineering
A Review: Design of 16 bit Arithmetic and Logical unit using Vivado 14.7 and Implementation on Basys 3 FPGA Board Prachi Sharma 1, Rama Laxmi 2, Arun Kumar Mishra 3 1 Student, 2,3 Assistant Professor,
More informationInternational Journal of Scientific & Engineering Research, Volume 4, Issue 5, May-2013 ISSN
255 CORRECTIONS TO FAULT SECURE OF MAJORITY LOGIC DECODER AND DETECTOR FOR MEMORY APPLICATIONS Viji.D PG Scholar Embedded Systems Prist University, Thanjuvr - India Mr.T.Sathees Kumar AP/ECE Prist University,
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified
More informationTrace-driven System-level Power Evaluation of Systemon-a-chip
Trace-driven System-level Power Evaluation of Systemon-a-chip Peripheral Cores Tony D. Givargis, Frank Vahid* Department of Computer Science and Engineering University of California, Riverside, CA 92521
More informationContents. Chapter 3 Combinational Circuits Page 1 of 34
Chapter 3 Combinational Circuits Page of 34 Contents Contents... 3 Combinational Circuits... 2 3. Analysis of Combinational Circuits... 2 3.. Using a Truth Table... 2 3..2 Using a Boolean unction... 4
More informationEnergy Estimation Based on Hierarchical Bus Models for Power-Aware Smart Cards
Energy Estimation Based on Hierarchical Bus Models for Power-Aware Smart Cards U. Neffe, K. Rothbart, Ch. Steger, R. Weiss Graz University of Technology Inffeldgasse 16/1 8010 Graz, AUSTRIA {neffe, rothbart,
More informationOptimal DC/AC Data Bus Inversion Coding
Optimal DC/AC Data Bus Inversion Coding Jan Lucas, Sohan Lal, Ben Juurlink Embedded Systems Architecture TU Berlin Berlin, Germany {j.lucas,sohan.lal,b.juurlink}@tu-berlin.de Abstract GDDR5 and DDR4 memories
More informationComputer Systems. Binary Representation. Binary Representation. Logical Computation: Boolean Algebra
Binary Representation Computer Systems Information is represented as a sequence of binary digits: Bits What the actual bits represent depends on the context: Seminar 3 Numerical value (integer, floating
More informationVerilog. What is Verilog? VHDL vs. Verilog. Hardware description language: Two major languages. Many EDA tools support HDL-based design
Verilog What is Verilog? Hardware description language: Are used to describe digital system in text form Used for modeling, simulation, design Two major languages Verilog (IEEE 1364), latest version is
More informationModel EXAM Question Bank
VELAMMAL COLLEGE OF ENGINEERING AND TECHNOLOGY, MADURAI Department of Information Technology Model Exam -1 1. List the main difference between PLA and PAL. PLA: Both AND and OR arrays are programmable
More informationDigital Systems Design with PLDs and FPGAs Kuruvilla Varghese Department of Electronic Systems Engineering Indian Institute of Science Bangalore
Digital Systems Design with PLDs and FPGAs Kuruvilla Varghese Department of Electronic Systems Engineering Indian Institute of Science Bangalore Lecture-31 Evolution of PLDs So welcome to this lecture
More informationA Brief Introduction to Verilog Hardware Definition Language (HDL)
www.realdigital.org A Brief Introduction to Verilog Hardware Definition Language (HDL) Forward Verilog is a Hardware Description language (HDL) that is used to define the structure and/or behavior of digital
More informationVHDL CODE FOR SINGLE BIT ERROR DETECTION AND CORRECTION WITH EVEN PARITY CHECK METHOD USING XILINX 9.2i
VHDL CODE FOR SINGLE BIT ERROR DETECTION AND CORRECTION WITH EVEN PARITY CHECK METHOD USING XILINX 9.2i Vivek Singh, Rahul Kumar, Manish Kumar Upadhyay Dept. of Electronics & Communication Engineering..
More informationVLSI Testing. Fault Simulation. Virendra Singh. Indian Institute of Science Bangalore
VLSI Testing Fault Simulation Virendra Singh Indian Institute of Science Bangalore virendra@computer.org E0 286: Test & Verification of SoC Design Lecture - 4 Jan 25, 2008 E0-286@SERC 1 Fault Model - Summary
More informationDesign guidelines for embedded real time face detection application
Design guidelines for embedded real time face detection application White paper for Embedded Vision Alliance By Eldad Melamed Much like the human visual system, embedded computer vision systems perform
More informationVERY LOW POWER MICROPROCESSOR CELL
VERY LOW POWER MICROPROCESSOR CELL Puneet Gulati 1, Praveen Rohilla 2 1, 2 Computer Science, Dronacharya College Of Engineering, Gurgaon, MDU, (India) ABSTRACT We describe the development and test of a
More informationEND-TERM EXAMINATION
(Please Write your Exam Roll No. immediately) END-TERM EXAMINATION DECEMBER 2006 Exam. Roll No... Exam Series code: 100919DEC06200963 Paper Code: MCA-103 Subject: Digital Electronics Time: 3 Hours Maximum
More informationTransition Reduction in Memory Buses Using Sector-based Encoding Techniques
Transition Reduction in Memory Buses Using Sector-based Encoding Techniques Yazdan Aghaghiri University of Southern California 3740 McClintock Ave Los Angeles, CA 90089 yazdan@sahand.usc.edu Farzan Fallah
More information12. Use of Test Generation Algorithms and Emulation
12. Use of Test Generation Algorithms and Emulation 1 12. Use of Test Generation Algorithms and Emulation Jacob Abraham Department of Electrical and Computer Engineering The University of Texas at Austin
More informationA microprocessor-based system
7 A microprocessor-based system How simple can a microprocessor-based system actually be? It must obviously contain a microprocessor otherwise it is simply another electronic circuit. A microprocessor
More informationViterbi Algorithm for error detection and correction
IOSR Journal of Electronicsl and Communication Engineering (IOSR-JECE) ISSN: 2278-2834-, ISBN: 2278-8735, PP: 60-65 www.iosrjournals.org Viterbi Algorithm for error detection and correction Varsha P. Patil
More informationA High Speed Design of 32 Bit Multiplier Using Modified CSLA
Journal From the SelectedWorks of Journal October, 2014 A High Speed Design of 32 Bit Multiplier Using Modified CSLA Vijaya kumar vadladi David Solomon Raju. Y This work is licensed under a Creative Commons
More informationFSM Components. FSM Description. HDL Coding Methods. Chapter 7: HDL Coding Techniques
FSM Components XST features: Specific inference capabilities for synchronous Finite State Machine (FSM) components. Built-in FSM encoding strategies to accommodate your optimization goals. You may also
More informationAdvanced Parallel Architecture Lessons 5 and 6. Annalisa Massini /2017
Advanced Parallel Architecture Lessons 5 and 6 Annalisa Massini - Pipelining Hennessy, Patterson Computer architecture A quantitive approach Appendix C Sections C.1, C.2 Pipelining Pipelining is an implementation
More information1993. (BP-2) (BP-5, BP-10) (BP-6, BP-10) (BP-7, BP-10) YAGS (BP-10) EECC722
Dynamic Branch Prediction Dynamic branch prediction schemes run-time behavior of branches to make predictions. Usually information about outcomes of previous occurrences of branches are used to predict
More informationCS232 VHDL Lecture. Types
CS232 VHDL Lecture VHSIC Hardware Description Language [VHDL] is a language used to define and describe the behavior of digital circuits. Unlike most other programming languages, VHDL is explicitly parallel.
More informationSDR Forum Technical Conference 2007
THE APPLICATION OF A NOVEL ADAPTIVE DYNAMIC VOLTAGE SCALING SCHEME TO SOFTWARE DEFINED RADIO Craig Dolwin (Toshiba Research Europe Ltd, Bristol, UK, craig.dolwin@toshiba-trel.com) ABSTRACT This paper presents
More informationLPRAM: A Novel Low-Power High-Performance RAM Design With Testability and Scalability. Subhasis Bhattacharjee and Dhiraj K. Pradhan, Fellow, IEEE
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 23, NO. 5, MAY 2004 637 LPRAM: A Novel Low-Power High-Performance RAM Design With Testability and Scalability Subhasis
More informationSynchronization In Digital Systems
2011 International Conference on Information and Network Technology IPCSIT vol.4 (2011) (2011) IACSIT Press, Singapore Synchronization In Digital Systems Ranjani.M. Narasimhamurthy Lecturer, Dr. Ambedkar
More informationUNIT I (Two Marks Questions & Answers)
UNIT I (Two Marks Questions & Answers) Discuss the different ways how instruction set architecture can be classified? Stack Architecture,Accumulator Architecture, Register-Memory Architecture,Register-
More informationAnalysis of Different Multiplication Algorithms & FPGA Implementation
IOSR Journal of VLSI and Signal Processing (IOSR-JVSP) Volume 4, Issue 2, Ver. I (Mar-Apr. 2014), PP 29-35 e-issn: 2319 4200, p-issn No. : 2319 4197 Analysis of Different Multiplication Algorithms & FPGA
More informationPrevious Exam Questions System-on-a-Chip (SoC) Design
Problem: Task Scheduling (20 Points) This is a simple single microprocessor core platform with a video coprocessor, which is configured to process 32 bytes of video data and produce a 1 byte result. Each
More informationAMS Behavioral Modeling
CHAPTER 3 AMS Behavioral Modeling Ronald S. Vogelsong, Ph.D. Overview Analog designers have for many decades developed their design using a Bottom-Up design flow. First, they would gain the necessary understanding
More informationLAB 9 The Performance of MIPS
Goals To Do LAB 9 The Performance of MIPS Learn how the performance of the processor is determined. Improve the processor performance by adding new instructions. Determine the speed of the processor in
More informationPower Estimation of UVA CS754 CMP Architecture
Introduction Power Estimation of UVA CS754 CMP Architecture Mateja Putic mateja@virginia.edu Early power analysis has become an essential part of determining the feasibility of microprocessor design. As
More informationTrace Signal Selection to Enhance Timing and Logic Visibility in Post-Silicon Validation
Trace Signal Selection to Enhance Timing and Logic Visibility in Post-Silicon Validation Hamid Shojaei, and Azadeh Davoodi University of Wisconsin 1415 Engineering Drive, Madison WI 53706 Email: {shojaei,
More informationIntroduction to Multiprocessors (Part I) Prof. Cristina Silvano Politecnico di Milano
Introduction to Multiprocessors (Part I) Prof. Cristina Silvano Politecnico di Milano Outline Key issues to design multiprocessors Interconnection network Centralized shared-memory architectures Distributed
More informationBits, Words, and Integers
Computer Science 52 Bits, Words, and Integers Spring Semester, 2017 In this document, we look at how bits are organized into meaningful data. In particular, we will see the details of how integers are
More informationIntroduction. SDIO Bus
In this Application Note we discuss the SDIO Protocol, the challenges involved in Protocol breakdown and PGY-SSM comprehensive Protocol Analysis solution for decode and analysis. Introduction. SDIO offers
More informationTheorem 2.9: nearest addition algorithm
There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used
More informationFPGA Implementation of Multiplier for Floating- Point Numbers Based on IEEE Standard
FPGA Implementation of Multiplier for Floating- Point Numbers Based on IEEE 754-2008 Standard M. Shyamsi, M. I. Ibrahimy, S. M. A. Motakabber and M. R. Ahsan Dept. of Electrical and Computer Engineering
More informationSpaceWire DC-Balanced Character Encoding for SpaceWire
DC-Balanced Character Encoding for Cliff Kimmery Introduction Many applications migrating to from alternate communications protocols (e.g. MIL-STD-1553) provide much greater tolerance for long-term and
More informationPART I BASIC DIGITAL CIRCUITS
PART I BASIC DIGITAL CIRCUITS CHAPTER 1 GATE-LEVEL COMBINATIONAL CIRCUIT 1.1 INTRODUCTION VHDL stands for VHSIC (very high-speed integrated circuit) hardware description language. It was originally sponsored
More information