FPGA Implementation and Analysis of Error Correction Codes for Physical Unclonable Functions

Size: px
Start display at page:

Download "FPGA Implementation and Analysis of Error Correction Codes for Physical Unclonable Functions"

Transcription

1 1 FPGA Implementation and Analysis of Error Correction Codes for Physical Unclonable Functions Brian Jarvis, ECE 646, George Mason University Abstract This project explores and implements an encoding and decoding algorithm suitable for use with Physical Unclonable Functions (PUFs). This topic is of particular interest because of the growing need for trust in integrated circuits (IC). This could mean an IC generating a secret key for authentication or responding in a challenge/response scheme. The area known as Physical Unclonable Functions provides a means by which such trust may be established, however an encoding and decoding algorithm is needed to provide PUF ID fault tolerance and reduce the error rate of the system. BCH codes are selected due to their attractive error correction properties. This project implements and analyzes a BCH encoder and decoder and explores alternative implementations to reduce resource utilization. Index Terms Physical Unclonable Function, Correction Code, MicroBlaze, Concatenated code T I. INTRODUCTION BCH Error HERE is a growing need for trust at the hardware level. An increasingly popular method for addressing this need is the use of Physical Unclonable Functions (PUFs). PUFs allow a hardware component to exploit manufacturing variations or any other part-specific data in order to generate a unique signature or key for that individual part. This is analogous to biometric information such as a human fingerprint. The appeal of PUFs is that the same circuit design can be implemented on any number of hardware devices, yet due to the uniqueness of each device, each will produce a unique code. In [1] a usage of PUFs is described in which a bank customer uses a PUF device to authenticate at an ATM. The advantage brought by PUFs in this application is that an adversary would be unable to duplicate the PUF ID of the customer. A problem arises with PUFs whereby on successive PUF code generation, the outputs may not be identical. In [2] it is claimed that the error rate in PUF value regeneration can be as high as 10%. Additionally, environmental and system factors such as ambient temperature and voltage fluctuations can influence the PUF ID reproducibility, increasing the native error rate. In order to use a PUF system for establishing trust each device must be able to reliably regenerate the same code. It is for this reason that an error correcting code is often used to augment the PUF ID generation. The field of coding theory is vast and has applications which reach far beyond PUFs, which was the primary application explored during this project. For that reason, the field of candidate encoders and decoders was pared down to those which use minimal resources when implemented in an FPGA. The PUF concept of operations is that the unique function generator is run primarily at the time of FPGA power-up. For this reason, speed is not a priority as it does not need to run in real-time. What is of high priority is minimal resource utilization. This is because the PUF implementation must fit in the FPGA alongside the main application, whatever that may be. The encoding and decoding portion ideally would be just a small subset of the overall PUF circuit, thus must be implemented as efficiently as possible to reduce the resources needed. Additionally, the encoding and decoding algorithm must provide an error rate which is sufficiently low to reliably produce a unique PUF ID for a given chip. For this project, the BCH code was selected due to its attractive error correcting performance. An implementation by [3] was used as a baseline for encoding and decoding performance. This implementation was then compared to the resource utilization of a software implementation by [4] running in a MicroBlaze soft processor core. Finally, concatenated error correction codes were analyzed and compared as a way to reduce area. The FPGA family selected for implementation was the Xilinx Kintex-7. Specifically, the lowest-resource part available in the family, XC7K70T-FBG676, was used. VHDL was selected as the hardware description language for FPGA implementation. C was used in the MicroBlaze application. II. PREVIOUS WORK In [5] an encoding and decoding scheme known as Index Based Syndrome (IBS) is described. The authors claim superior resource utilization with sufficient error correction for PUF applications. This encoder and decoder was explored in a previous project. What was discovered was that while the code is indeed very small in terms of area needs, several negative attributes make it less useful for cryptographic applications. Specifically, IBS requires a specific form of PUF ID format known as a Real-Valued PUF which is not realistic to assume will always be available. Additionally, by nature of how IBS code words are formed, the code rate could become low if a large bank of PUF inputs are used; its code rate is 1 / log 2(N),

2 2 where N is the number of PUF inputs used. In [2], Maes et al. selected a BCH encoder and decoder due to its superior error correcting performance and purported low resource requirements. This code is selected for further analysis and comparison to alternative implementations in this paper. III. BACKGROUND PUF IDs can be formed from many different sources. The techniques used to generate PUFs are topics of ongoing research. An example implementation is illustrated below with a brief explanation. In Fig. 2, the shift register stages are selectively XORed with the feedback line according to a generator polynomial. This allows simple encoding by feeding the message to encode into the LFSR one bit at a time. While the input message loads the LFSR, it is also passed through to the output. Once the message to encode has been input completely the multiplexer at the output is switched to pass the contents of the LFSR stages through to the output. Once the LFSR is drained, the encoded word has been completely output. Mathematically, this process is represented by the following equations. ( ) = (1) ( ) = (2) ( ) = ( ) ( ) (3) Fig. 1: Ring-Oscillator Physical Unclonable Function Network In Fig. 1, a Ring-Oscillator PUF (ROPUF) is seen. This type of PUF is a digital circuit which has been designed to produce an oscillating logic pattern on its output bit. It can be seen that by feeding a 1 into the input bit, the output bit will oscillate due to the NAND gate output inversion feedback loop. The distance between the NAND gate output and feedback loop input dictates the frequency at which the output pattern will oscillate. This feedback distance can be made even more configurable through the introduction of multiplexers which select different paths through the circuit. Each of these ROPUFs is designed to oscillate at a prescribed frequency. In reality, when implemented in hardware the actual oscillation frequency differs slightly from what was expected. These differences are accumulated in the processing logic illustrated in the right side of the above diagram and are used to produce a unique PUF ID. The BCH code is a cyclic linear block code. It is described in detail in [6]. These codes make use of Galois Field arithmetic to correct many bit errors given sufficient parity information. BCH codes can be used to correct both binary and non-binary error patterns; the Reed-Solomon code is an example of a non-binary error correction code within the BCH family. Only binary BCH codes are considered in this project. An advantage of the BCH code is that the encoder can be implemented very efficiently using a linear feedback shift register (LFSR). An example encoder implementation is illustrated below. Fig. 2: Example BCH encoder. M denotes the message bits. C denotes the code word output. In (1), a message polynomial m(x) is formed according to the message bits. For example, the binary sequence 1101 yields an m(x) value of 1 + x + x 3. In (2), the generator polynomial for the circuit depicted in Fig. 2 is given. In ( 3), the code word polynomial c(x) is formed by multiplying the message polynomial by the generator polynomial g(x). The output of the circuit in Fig. 2 is the value c(x). The downside to using the BCH code is its decoder. The decoding process involves a complex circuit which is not areaefficient. Also the decoding stage takes significantly longer than the encoding stage. The time required is not a problem for PUF applications, however the area requirements make alternative implementations more attractive. A simple class of error correction codes known as repetition codes are explored as a concatenation option. Repetition codes operate on a message size of one bit. The code word size dictates how many times the input bit gets repeated. For example, a (5,1) repetition code takes one bit of input and outputs the bit repeated five times. To decode a repetition code, simple majority logic can be used. That is, whichever value is most prevalent in the sequence of N bits becomes the decoded value. Concatenated codes are explored as an alternative to a single error correction code. The concept of a concatenated code is that the message to be encoded is first passed through an outer encoder, denoted C 1. The code word produced by C 1 is then fed as a message to an inner encoder, denoted C 2. The output of C 2 becomes the code word of the concatenated encoder. The reverse is performed in order to decode a concatenated code word. First D 2, the decoder corresponding to the inner code, decodes the code word to an intermediate value which is then further decoded by D 1, the decoder corresponding to the outer code. This simple architecture has powerful properties. A metric used in evaluating error correction codes, the minimum distance, is multiplied when concatenating two codes. A multiplicative effect on the minimum distance becomes an exponential effect on the error correcting capability. This allows two relatively small codes to correct large amounts of errors. IV. ALGORITHM PARAMETERS The BCH algorithm is described by three parameters: code

3 3 word length, message length, and correctable errors. These parameters are denoted as N, k, and t, respectively. Code word length, N, is the length of the code following the encoding process. Message length, k, is the length of the input message to the encoder. So put another way, a message of length k is BCH encoded to produce a code word of length N. Once encoded, the BCH decoder can produce the original message of length k, even in the presence of up to t errors in the code word. For this project, BCH codes with parameters N=255, k=131, t=18 are initially considered. V. SOFTWARE MODELING In [3] Jamro presents a configurable C application which constructs a BCH encoder and decoder. The application generates synthesizable VHDL for the encoder and decoder as well as a simulation circuit to test with artificially introduced errors. A combination of C algorithms and template files are used to accomplish this. The application is configured using an input file where the code parameters are specified. This C application and associated support files were used in this project as a baseline implementation of a BCH encoder and decoder. The Jamro BCH design has some negative aspects to it. The design is reliant on the C application in order to modify the code parameters. This is less desirable than a pure HDL solution. Also the output VHDL uses some coding practices which are more error prone. Lastly, the output files are not well organized and result in files containing thousands of lines of VHDL code that could be encapsulated for better readability. As part of this project, several improvements were performed on the Jamro application. For signal types throughout the C application algorithms and template files, all BIT and BIT_VECTOR signals were replaced by STD_LOGIC and STD_LOGIC_VECTOR signals, respectively. This was done because the STD_LOGIC based signals are capable of more realistically representing signals in a digital system. The BIT types can only be values 1 or 0, whereas the STD_LOGIC types can be one of nine possible values. For example the value U can represent an uninitialized signal or the value X can help diagnose improper states or multiple drivers of a signal. Additionally, clock conditions in the Jamro design used the (clk event and clk= 1 ) style condition checking for driving clock-based processes. With signals capable of more values than just 1 and 0, this style of condition checking can possibly lead to undesirable behavior. For example, a STD_LOGIC value could theoretically transition from H to 1, which would evaluate to true in that condition check. This form of clock transition checking was replaced with rising_edge(clk). This statement only evaluates to true on the rising edge of the clock signal, which is the intended behavior. In the Jamro design s process blocks there were no process sensitivity lists. By omitting sensitivity lists, all processes were running infinitely with execution only paused due to wait until statements inside the block. This practice can lead to incorrect simulation results which are very difficult to trace. To correct this, process statements were bound with sensitivity lists instead of interior wait until statements. Lastly, as mentioned previously the Jamro application uses a combination of C algorithms and template files to generate the output VHDL files. On inspection, many of the components are copied directly from the templates into the output files without any intermediary modification. These modules were pulled aside into separate VHDL files that are used from inside the encoder and decoder. This effectively reduces the design s dependence on the C application. A separate C application originally developed by [4] was also used in this project. This application provides a standalone BCH encoder and decoder in C which was used with some slight modifications. Prior to this project, for an earlier effort, this application was modified to reduce stack usage. All arrays used in the BCH algorithms were replaced by dynamically allocated memory. An initialization routine was added to allocate these memory areas based on the desired BCH parameters and a clean-up routine added to free the allocated memory. This has the advantage of being able to use the same compiled executable with variable parameters without needing to recompile the application. VI. HARDWARE ANALYSIS Three hardware implementations were considered for this project. The Jamro BCH Encoder and Decoder were analyzed for baseline performance. A MicroBlaze implementation was also compared to determine at what BCH parameters it becomes more efficient, in terms of resource utilization, to implement the encoder and decoder in software. Lastly a concatenated code example was compared to determine if area savings can be realized by combining multiple codes. A. Jamro BCH Encoder and Decoder The Jamro BCH encoder and decoder were implemented for the Kintex 7 XC7K70T-FBG676 FPGA using the Xilinx ISE tool. The parameters used to establish baseline performance were N=255, k=131, t=18. The circuit implemented, at a high level, is illustrated below. Fig. 3: Test circuit used for Jamro BCH analysis Figure Fig. 3 illustrates how the Jamro BCH simulation circuit is designed. Test vectors generated by the C application are fed into the BCH encoder. The output of this block is now an N-bit code word. An error introduction stage corrupts the data before passing it along to the decoder. At the output of the decoder, the k bit message is compared against the original input to verify all errors have been corrected.

4 4 1) Timing The timing parameters of the BCH encoder and decoder were determined algorithmically and verified empirically by inspection of waveform output during functional simulation. The encoder circuit described previously has a latency of N clock cycles. Due to the serial nature of the design, only one bit can be processed at a time. This latency is due to the need to pass the k message bits through the LFSR (and to output the message portion of the code word), followed by N-k cycles needed to drain the LFSR. This yields a total of N clock cycles. For N=255, this results in a latency of 255 clock cycles. The decoder can be implemented in either a parallel or serial architecture. The parallel architecture uses a more complex circuit to eliminate the need for wait states incurred by the serial architecture in the interior Berlekamp-Massey algorithm used by the decoder. When implemented using the serial architecture, the decoder has a latency of N k clock cycles. For N=255, k=131, this results in a latency of 568 clock cycles. When implemented using the parallel architecture, the decoder has a latency of N k clock cycles. For N=255, k=131, this results in a latency of 442 clock cycles. 2) Area To derive resource utilization metrics, the Xilinx ISE project build parameters were set to optimize for area. The project was implemented for the same Kintex 7 part mentioned previously. The implementation results are summarized in the table below. TABLE I RESOURCE UTILIZATION OF JAMRO BCH ENCODER AND DECODER ON KINTEX 7 XC7K70T-FBG676 Architecture Serial Parallel Slice Registers Slice LUTs Occupied Slices In Table I, it is seen that the serial implementation uses many more registers than the parallel implementation, however overall uses fewer slices. This is because the serial architecture requires wait states inside the Berlekamp-Massey algorithm implementation whereas the parallel architecture does not. But in exchange, the parallel architecture has a more complex design resulting in higher area usage. Using several different sets of parameters and the parallel Jamro architecture, the resource utilization of each was captured in Table II. TABLE II RESOURCE UTILIZATION OF JAMRO BCH AT DIFFERENT PARAMETERS BCH Parameters N=511, k=241, t=36 N=255, k=131, t=18 N=127, k=64, t=10 N=15, k=5, t=3 Slice Registers Slice LUTs Occupied Slices Utilization Percentage 24 % 13 % 5 % 1 % TABLE II shows that, as would be expected, the resource utilization increases as the size of the code also increases with a roughly linear relationship. Of particular interest is that on the Kintex 7 XC7K70T-FBG676 FPGA the (511, 241, 36) code occupies 24% of available slices. B. MicroBlaze BCH Encoder and Decoder The Xilinx Platform Studio was used to design a MicroBlaze-based project in which the modified C BCH implementation from [4] could be tested. Due to resource constraints, this testing was limited to an analysis of the resources utilized by the MicroBlaze soft processor. Using the Xilinx SDK the modified BCH application was compiled for the MicroBlaze architecture. Using an available MicroBlaze compilation analysis program, it was determined that the BCH application requires bytes of instruction memory and 3568 bytes of data memory. Using these metrics and a conservative padding, a MicroBlaze processor with 16 KB instruction memory and 16 KB data memory was implemented. The table below summarizes the resource utilization of this implementation. TABLE III RESOURCE UTILIZATION OF MICROBLAZE SOFT PROCESSOR ON KINTEX 7 XC7K70T-FBG676 Slice Registers 1532 Slice LUTs 2131 Occupied Slices 855 Using the area measurements in TABLE III the MicroBlaze implementation can be compared to the Jamro hardware implementation. A break-even point is determined to be between the (127,64,10) and (255, 131, 18) Jamro BCH codes. That is, above N=127, k=64, t=10, it is more area-efficient to use a MicroBlaze software implementation of BCH error correction. C. Concatenated Repetition and BCH codes In [8] several concatenated encoder and decoder schemes are described whereby a repetition code is used as an outer code with a small inner code used to augment the coding performance. This concatenation has the effect of multiplying the two individual codes minimum distances. This exponentially increases the concatenated code s error correcting performance. Since the concatenated architecture is simply passing the output of one code to the input of another,

5 5 this exponential increase in performance is achieved with only an additive cost in terms of area. As an example of this powerful concept, the (15, 5, 3) Jamro BCH implementation with a (13,1) outer repetition code was evaluated. A repetition code is a very simple circuit, requiring just 41 slices regardless of the repetition size if implemented with sequential logic [8]. From earlier comparisons of resource utilization, the (15, 5, 3) Jamro BCH code is known to occupy 81 slices. The minimum distance of the (13, 1) code is d min=13, which means it can correct up to 6 errors. The minimum distance of the (15, 5, 3) BCH code is d min=7, which means it can correct up to 3 errors. The concatenation of these two codes produces a minimum distance of d min=91, capable of correcting up to 45 errors while occupying 122 slices. A stand-alone BCH code could require upwards of 2496 occupied slices to achieve comparable performance. VII. ANALYSIS OF RESULTS In many publications about PUF applications, the BCH code is used to correct errors in the PUF ID generation. The argument is sometimes made, for example in [2], that the BCH code is efficient in terms of area required for implementation. The results of this project show, however, that the BCH code by itself is not an efficient algorithm in terms of area. For example, if a 512 bit key is desired and is to be directly computed using the (511, 241, 36) BCH code, 24% of a Kintex 7 XC7K70T-FBG676 FPGA is occupied purely by this error correction code. From the comparison of the stand-alone hardware BCH code to one which is offloaded to a MicroBlaze soft processor, these results showed that there is a clear break-even point in the design. Occupied Slices Errors corrected HW SW Figure 4: Slices required versus errors corrected for BCH implemented in hardware versus software (MicroBlaze) The chart above illustrates the break-even point of a hardware versus software decision for the BCH encoder and decoder. If more than approximately 12 errors are to be corrected, the MicroBlaze soft processor implementation will use less area. The previous results are dwarfed by the area-efficiency of a concatenated code, however. Using the numbers produced above, extremely high error correction ability is realized with relatively small codes. For example, a BCH code capable of correcting 10 errors concatenated with a repetition code capable of correcting 6 errors is able to correct 60 errors with less area than would be required by the MicroBlaze implementation. The concatenated code approach is not without risk, though. In [7], Koeberl et al. point out that previous publications have underestimated the entropy loss in their designs. This leads to PUF-based keys which are not cryptographically sound as in many cases there is no remaining entropy in the values produced. The paper summarizes several concatenated codes which do produce keys acceptable for cryptographic applications. Notably, the only concatenated schemes listed which have a BCH code as the inner code require a very large BCH code with a relatively small repetition code. For example, a (460, 289, 41) BCH code concatenated with a (7, 1) repetition code. Notably, Koeberl et al. indicate that equivalent concatenated bit-error rates can be realized with alternative inner codes for example, the Golay code or small Reed-Muller codes. Implementation of these concatenated schemes would be viable options for future work. VIII. LESSONS LEARNED In addition to time management, this project provided valuable lessons in the evaluation of designs for minimal area. The comparison to a software implementation in a MicroBlaze soft processor is a valuable tool in the field of software/hardware co-design. In addition, this project has provided a greater understanding of error correction codes and their applications. Similarly, studying methods in which PUF IDs can be used for cryptographic key generation and authentication has provided a better realization of real-world possibilities for what was previously perceived to be primarily academic. IX. CONCLUSIONS AND FUTURE WORK In this project, the goal was to select, implement, and analyze error correction codes which used minimal area while still providing acceptable error correction capability. The desired target family of FPGAs was the Xilinx Kintex 7. The smallest part in this family of FPGAs, XC7K70T-FBG676, was selected. Through hardware implementation analysis, it was found that the BCH codes often recommended in previous publications quickly grow to an area that is unsustainable, especially at high code word sizes. An alternative was presented which implements the BCH algorithms in software running on a MicroBlaze soft processor. These results showed that at a break-even point of approximately 12 errors corrected, the MicroBlaze approach becomes the more areaefficient design. Concatenated codes were analyzed and showed great promise both in terms of area required and error correction performance. Future work in this area would include research and implementation of concatenated codes which use the Reed- Muller or Golay codes in place of BCH. The inclusion of such error correcting codes would reduce the required resource utilization while maintaining cryptographic integrity of the generated keys. Also the area of Fuzzy Extractors was

6 6 explored, but was not used heavily in this project. That area combined with the performance of concatenated codes is a very promising area of further research. REFERENCES [1] K. Frikken, M. Blanton, and M. Atallah, "Robust Authentication Using Physically Unclonable Functions," Information Security Conference, September September , pp [2] R. Maes, A. Van Herrewege, and I. Verbauwhede, "PUFKY: A Fully Functional PUF-based Cryptographic Key Generator," Proc. CHES 2012, LNCS 7428, pp [3] E. Jamro. The Design of a VHDL Based Synthesis Tool for BCH Codecs, Master of Philosophy Thesis, University of Huddersfield, Huddersfield, England, Internet: [4] R. Morelos-Zaragoza. Encoder/decoder for binary BCH codes in C (Version 3.1), Internet: June 13, 1997 [Sep. 14, 2014]. [5] M. Yu, S. Devadas, "Secure and Robust Error Correction for Physical Unclonable Functions," IEEE Design & Test of Computers, vol.27, no.1, Jan. -Feb. 2010, pp [6] S. Lin and D. Costello, Error Control Coding, 2nd. ed., Prentice Hall, 2004 [7] P. Koeberl, J. Li, A. Rajan and W. Wu. "Entropy Loss in PUF-based Key Generation Schemes: The Repetition Code Pitfall," Proc IEEE International Symposium on Hardware-Oriented Security and Trust, pp Ph.D. Thesis, KU Leuven, Belgium, Aug Available: pdf [8] C. Bösch, J. Guajardo, A-R. Sadeghi, J. Shokrollahi, and P. Tuyls. Efficient Helper Data Key Extractor on FPGAs, CHES 2008, pp

Low-Overhead Implementation of a Soft Decision Helper Data Algorithm for SRAM PUFs

Low-Overhead Implementation of a Soft Decision Helper Data Algorithm for SRAM PUFs Low-Overhead Implementation of a Soft Decision Helper Data Algorithm for SRAM PUFs Roel Maes 1, Pim Tuyls 1,2, Ingrid Verbauwhede 1 1. COSIC, K.U.Leuven and IBBT 2. Intrinsic-ID, Eindhoven Workshop on

More information

Fault Tolerant Parallel Filters Based On Bch Codes

Fault Tolerant Parallel Filters Based On Bch Codes RESEARCH ARTICLE OPEN ACCESS Fault Tolerant Parallel Filters Based On Bch Codes K.Mohana Krishna 1, Mrs.A.Maria Jossy 2 1 Student, M-TECH(VLSI Design) SRM UniversityChennai, India 2 Assistant Professor

More information

A Comprehensive Set of Schemes for PUF Response Generation

A Comprehensive Set of Schemes for PUF Response Generation A Comprehensive Set of Schemes for PUF Response Generation Bilal Habib and Kris Gaj Electrical and Computer Engineering Department George Mason University, Fairfax VA, USA {bhabib, kris}@gmu.edu Abstract.

More information

Design of Flash Controller for Single Level Cell NAND Flash Memory

Design of Flash Controller for Single Level Cell NAND Flash Memory Design of Flash Controller for Single Level Cell NAND Flash Memory Ashwin Bijoor 1, Sudharshana 2 P.G Student, Department of Electronics and Communication, NMAMIT, Nitte, Karnataka, India 1 Assistant Professor,

More information

Key Reconciliation Protocols for Error Correction of Silicon PUF Responses

Key Reconciliation Protocols for Error Correction of Silicon PUF Responses Key Reconciliation Protocols for Error Correction of Silicon PUF Responses Brice Colombier, Lilian Bossuet, Viktor Fischer Univ Lyon, UJM-Saint-Etienne, CNRS Laboratoire Hubert Curien UMR 5516 F-42023,

More information

AN EFFICIENT DESIGN OF VLSI ARCHITECTURE FOR FAULT DETECTION USING ORTHOGONAL LATIN SQUARES (OLS) CODES

AN EFFICIENT DESIGN OF VLSI ARCHITECTURE FOR FAULT DETECTION USING ORTHOGONAL LATIN SQUARES (OLS) CODES AN EFFICIENT DESIGN OF VLSI ARCHITECTURE FOR FAULT DETECTION USING ORTHOGONAL LATIN SQUARES (OLS) CODES S. SRINIVAS KUMAR *, R.BASAVARAJU ** * PG Scholar, Electronics and Communication Engineering, CRIT

More information

An Analysis of Delay Based PUF Implementations on FPGA

An Analysis of Delay Based PUF Implementations on FPGA An Analysis of Delay Based PUF Implementations on FPGA Sergey Morozov, Abhranil Maiti, and Patrick Schaumont Virginia Tech, Blacksburg, VA 24061, USA {morozovs,abhranil,schaum}@vt.edu Abstract. Physical

More information

Efficient Fuzzy Extraction of PUF-Induced Secrets: Theory and Applications

Efficient Fuzzy Extraction of PUF-Induced Secrets: Theory and Applications Efficient Fuzzy Extraction of PUF-Induced Secrets: Theory and Applications Extended version: Cryptology eprint Archive, Report 2015/854 Jeroen Delvaux Ingrid Verbauwhede Mandel Yu Dawu Gu Matthias Hiller

More information

FPGAs: FAST TRACK TO DSP

FPGAs: FAST TRACK TO DSP FPGAs: FAST TRACK TO DSP Revised February 2009 ABSRACT: Given the prevalence of digital signal processing in a variety of industry segments, several implementation solutions are available depending on

More information

Advanced WG and MOWG Stream Cipher with Secured Initial vector

Advanced WG and MOWG Stream Cipher with Secured Initial vector International Journal of Scientific and Research Publications, Volume 5, Issue 12, December 2015 471 Advanced WG and MOWG Stream Cipher with Secured Initial vector Dijomol Alias Pursuing M.Tech in VLSI

More information

FPGA Matrix Multiplier

FPGA Matrix Multiplier FPGA Matrix Multiplier In Hwan Baek Henri Samueli School of Engineering and Applied Science University of California Los Angeles Los Angeles, California Email: chris.inhwan.baek@gmail.com David Boeck Henri

More information

Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 3rd year engineering. Winter/Summer Training

Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 3rd year engineering. Winter/Summer Training Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 3rd year engineering Winter/Summer Training Level 2 continues. 3 rd Year 4 th Year FIG-3 Level 1 (Basic & Mandatory) & Level 1.1 and

More information

Error Detecting and Correcting Code Using Orthogonal Latin Square Using Verilog HDL

Error Detecting and Correcting Code Using Orthogonal Latin Square Using Verilog HDL Error Detecting and Correcting Code Using Orthogonal Latin Square Using Verilog HDL Ch.Srujana M.Tech [EDT] srujanaxc@gmail.com SR Engineering College, Warangal. M.Sampath Reddy Assoc. Professor, Department

More information

Soft-Core Embedded Processor-Based Built-In Self- Test of FPGAs: A Case Study

Soft-Core Embedded Processor-Based Built-In Self- Test of FPGAs: A Case Study Soft-Core Embedded Processor-Based Built-In Self- Test of FPGAs: A Case Study Bradley F. Dutton, Graduate Student Member, IEEE, and Charles E. Stroud, Fellow, IEEE Dept. of Electrical and Computer Engineering

More information

Design of Convolution Encoder and Reconfigurable Viterbi Decoder

Design of Convolution Encoder and Reconfigurable Viterbi Decoder RESEARCH INVENTY: International Journal of Engineering and Science ISSN: 2278-4721, Vol. 1, Issue 3 (Sept 2012), PP 15-21 www.researchinventy.com Design of Convolution Encoder and Reconfigurable Viterbi

More information

A Binary Redundant Scalar Point Multiplication in Secure Elliptic Curve Cryptosystems

A Binary Redundant Scalar Point Multiplication in Secure Elliptic Curve Cryptosystems International Journal of Network Security, Vol3, No2, PP132 137, Sept 2006 (http://ijnsnchuedutw/) 132 A Binary Redundant Scalar Multiplication in Secure Elliptic Curve Cryptosystems Sangook Moon School

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION 1 CHAPTER 1 INTRODUCTION 1.1 Advance Encryption Standard (AES) Rijndael algorithm is symmetric block cipher that can process data blocks of 128 bits, using cipher keys with lengths of 128, 192, and 256

More information

WORD LEVEL FINITE FIELD MULTIPLIERS USING NORMAL BASIS

WORD LEVEL FINITE FIELD MULTIPLIERS USING NORMAL BASIS WORD LEVEL FINITE FIELD MULTIPLIERS USING NORMAL BASIS 1 B.SARGUNAM, 2 Dr.R.DHANASEKARAN 1 Assistant Professor, Department of ECE, Avinashilingam University, Coimbatore 2 Professor & Director-Research,

More information

Implementation of Galois Field Arithmetic Unit on FPGA

Implementation of Galois Field Arithmetic Unit on FPGA Implementation of Galois Field Arithmetic Unit on FPGA 1 LakhendraKumar, 2 Dr. K. L. Sudha 1 B.E project scholar, VIII SEM, Dept. of E&C, DSCE, Bangalore, India 2 Professor, Dept. of E&C, DSCE, Bangalore,

More information

2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006

2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006 2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006 The Encoding Complexity of Network Coding Michael Langberg, Member, IEEE, Alexander Sprintson, Member, IEEE, and Jehoshua Bruck,

More information

Lecture 12 VHDL Synthesis

Lecture 12 VHDL Synthesis CPE 487: Digital System Design Spring 2018 Lecture 12 VHDL Synthesis Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ 07030 1 What is Synthesis?

More information

Design and Implementation of VLSI 8 Bit Systolic Array Multiplier

Design and Implementation of VLSI 8 Bit Systolic Array Multiplier Design and Implementation of VLSI 8 Bit Systolic Array Multiplier Khumanthem Devjit Singh, K. Jyothi MTech student (VLSI & ES), GIET, Rajahmundry, AP, India Associate Professor, Dept. of ECE, GIET, Rajahmundry,

More information

Low Complexity Architecture for Max* Operator of Log-MAP Turbo Decoder

Low Complexity Architecture for Max* Operator of Log-MAP Turbo Decoder International Journal of Current Engineering and Technology E-ISSN 2277 4106, P-ISSN 2347 5161 2015 INPRESSCO, All Rights Reserved Available at http://inpressco.com/category/ijcet Research Article Low

More information

Error Correction and Detection using Cyclic Redundancy Check

Error Correction and Detection using Cyclic Redundancy Check Error Correction and Detection using Cyclic Redundancy Check Dr. T. Logeswari Associate Professor, Dept of Computer Science, New Horizon College, Banglore, Karnataka, India ABSTRACT: In this paper Cyclic

More information

VLSI Design and Implementation of High Speed and High Throughput DADDA Multiplier

VLSI Design and Implementation of High Speed and High Throughput DADDA Multiplier VLSI Design and Implementation of High Speed and High Throughput DADDA Multiplier U.V.N.S.Suhitha Student Department of ECE, BVC College of Engineering, AP, India. Abstract: The ever growing need for improved

More information

FAULT DETECTION IN THE ADVANCED ENCRYPTION STANDARD. G. Bertoni, L. Breveglieri, I. Koren and V. Piuri

FAULT DETECTION IN THE ADVANCED ENCRYPTION STANDARD. G. Bertoni, L. Breveglieri, I. Koren and V. Piuri FAULT DETECTION IN THE ADVANCED ENCRYPTION STANDARD G. Bertoni, L. Breveglieri, I. Koren and V. Piuri Abstract. The AES (Advanced Encryption Standard) is an emerging private-key cryptographic system. Performance

More information

Performance Evaluation & Design Methodologies for Automated CRC Checking for 32 bit address Using HDLC Block

Performance Evaluation & Design Methodologies for Automated CRC Checking for 32 bit address Using HDLC Block Performance Evaluation & Design Methodologies for Automated CRC Checking for 32 bit address Using HDLC Block 32 Bit Neeraj Kumar Misra, (Assistant professor, Dept. of ECE, R D Foundation Group of Institution

More information

Optimal Finite Field Multipliers for FPGAs

Optimal Finite Field Multipliers for FPGAs Optimal Finite Field Multipliers for FPGAs Captain Gregory C. Ahlquist, Brent Nelson, and Michael Rice 59 Clyde Building, Brigham Young University, Provo UT 8602 USA ahlquist@ee.byu.edu, nelson@ee.byu.edu,

More information

VLSI Implementation of Low Power Area Efficient FIR Digital Filter Structures Shaila Khan 1 Uma Sharma 2

VLSI Implementation of Low Power Area Efficient FIR Digital Filter Structures Shaila Khan 1 Uma Sharma 2 IJSRD - International Journal for Scientific Research & Development Vol. 3, Issue 05, 2015 ISSN (online): 2321-0613 VLSI Implementation of Low Power Area Efficient FIR Digital Filter Structures Shaila

More information

Comparative Performance Analysis of Block and Convolution Codes

Comparative Performance Analysis of Block and Convolution Codes Comparative Performance Analysis of Block and Convolution Codes Manika Pandey M.Tech scholar, ECE DIT University Dehradun Vimal Kant Pandey Assistant Professor/ECE DIT University Dehradun ABSTRACT Error

More information

2 Asst Prof, Kottam College of Engineering, Chinnatekur, Kurnool, AP-INDIA,

2 Asst Prof, Kottam College of Engineering, Chinnatekur, Kurnool, AP-INDIA, www.semargroups.org ISSN 2319-8885 Vol.02,Issue.06, July-2013, Pages:413-418 A H/W Efficient 64-Bit Parallel CRC for High Speed Data Transactions P.ABDUL RASOOL 1, N.MOHAN RAJU 2 1 Research Scholar, Kottam

More information

INTEGER SEQUENCE WINDOW BASED RECONFIGURABLE FIR FILTERS.

INTEGER SEQUENCE WINDOW BASED RECONFIGURABLE FIR FILTERS. INTEGER SEQUENCE WINDOW BASED RECONFIGURABLE FIR FILTERS Arulalan Rajan 1, H S Jamadagni 1, Ashok Rao 2 1 Centre for Electronics Design and Technology, Indian Institute of Science, India (mrarul,hsjam)@cedt.iisc.ernet.in

More information

International Journal of Scientific & Engineering Research, Volume 4, Issue 5, May-2013 ISSN

International 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 information

Effective Implementation of LDPC for Memory Applications

Effective Implementation of LDPC for Memory Applications Effective Implementation of LDPC for Memory Applications Y.Sreeja PG Scholar, VLSI & ES, Dept of ECE, Vidya Bharathi Institute of Technology, Janagaon, Warangal, Telangana. Dharavath Jagan Associate Professor,

More information

On the Scaling of Machine Learning Attacks on PUFs with Application to Noise Bifurcation

On the Scaling of Machine Learning Attacks on PUFs with Application to Noise Bifurcation On the Scaling of Machine Learning Attacks on PUFs with Application to Noise Bifurcation Johannes Tobisch and Georg T. Becker Horst Görtz Institute for IT Security Ruhr-University Bochum, Germany Abstract.

More information

Performance study and synthesis of new Error Correcting Codes RS, BCH and LDPC Using the Bit Error Rate (BER) and Field-Programmable Gate Array (FPGA)

Performance study and synthesis of new Error Correcting Codes RS, BCH and LDPC Using the Bit Error Rate (BER) and Field-Programmable Gate Array (FPGA) IJCSNS International Journal of Computer Science and Network Security, VOL.16 No.5, May 2016 21 Performance study and synthesis of new Error Correcting Codes RS, BCH and LDPC Using the Bit Error Rate (BER)

More information

DESIGNING OF STREAM CIPHER ARCHITECTURE USING THE CELLULAR AUTOMATA

DESIGNING OF STREAM CIPHER ARCHITECTURE USING THE CELLULAR AUTOMATA DESIGNING OF STREAM CIPHER ARCHITECTURE USING THE CELLULAR AUTOMATA 1 Brundha K A MTech Email: 1 brundha1905@gmail.com Abstract Pseudo-random number generators (PRNGs) are a key component of stream ciphers

More information

A Countermeasure Circuit for Secure AES Engine against Differential Power Analysis

A Countermeasure Circuit for Secure AES Engine against Differential Power Analysis A Countermeasure Circuit for Secure AES Engine against Differential Power Analysis V.S.Subarsana 1, C.K.Gobu 2 PG Scholar, Member IEEE, SNS College of Engineering, Coimbatore, India 1 Assistant Professor

More information

90A John Muir Drive Buffalo, New York Tel: Fax:

90A John Muir Drive   Buffalo, New York Tel: Fax: Reed Solomon Coding The VOCAL implementation of Reed Solomon (RS) Forward Error Correction (FEC) algorithms is available in several forms. The forms include pure software and software with varying levels

More information

DSP Co-Processing in FPGAs: Embedding High-Performance, Low-Cost DSP Functions

DSP Co-Processing in FPGAs: Embedding High-Performance, Low-Cost DSP Functions White Paper: Spartan-3 FPGAs WP212 (v1.0) March 18, 2004 DSP Co-Processing in FPGAs: Embedding High-Performance, Low-Cost DSP Functions By: Steve Zack, Signal Processing Engineer Suhel Dhanani, Senior

More information

Copyright 2011 Society of Photo-Optical Instrumentation Engineers. This paper was published in Proceedings of SPIE (Proc. SPIE Vol.

Copyright 2011 Society of Photo-Optical Instrumentation Engineers. This paper was published in Proceedings of SPIE (Proc. SPIE Vol. Copyright 2011 Society of Photo-Optical Instrumentation Engineers. This paper was published in Proceedings of SPIE (Proc. SPIE Vol. 8008, 80080E, DOI: http://dx.doi.org/10.1117/12.905281 ) and is made

More information

FPGA based Simulation of Clock Gated ALU Architecture with Multiplexed Logic Enable for Low Power Applications

FPGA based Simulation of Clock Gated ALU Architecture with Multiplexed Logic Enable for Low Power Applications IJSRD - International Journal for Scientific Research & Development Vol. 3, Issue 04, 2015 ISSN (online): 2321-0613 FPGA based Simulation of Clock Gated ALU Architecture with Multiplexed Logic Enable for

More information

Fault Tolerant Parallel Filters Based on ECC Codes

Fault Tolerant Parallel Filters Based on ECC Codes Advances in Computational Sciences and Technology ISSN 0973-6107 Volume 11, Number 7 (2018) pp. 597-605 Research India Publications http://www.ripublication.com Fault Tolerant Parallel Filters Based on

More information

A Lost Cycles Analysis for Performance Prediction using High-Level Synthesis

A Lost Cycles Analysis for Performance Prediction using High-Level Synthesis A Lost Cycles Analysis for Performance Prediction using High-Level Synthesis Bruno da Silva, Jan Lemeire, An Braeken, and Abdellah Touhafi Vrije Universiteit Brussel (VUB), INDI and ETRO department, Brussels,

More information

FPGA Implementation of Double Error Correction Orthogonal Latin Squares Codes

FPGA Implementation of Double Error Correction Orthogonal Latin Squares Codes FPGA Implementation of Double Error Correction Orthogonal Latin Squares Codes E. Jebamalar Leavline Assistant Professor, Department of ECE, Anna University, BIT Campus, Tiruchirappalli, India Email: jebilee@gmail.com

More information

Large-Scale Network Simulation Scalability and an FPGA-based Network Simulator

Large-Scale Network Simulation Scalability and an FPGA-based Network Simulator Large-Scale Network Simulation Scalability and an FPGA-based Network Simulator Stanley Bak Abstract Network algorithms are deployed on large networks, and proper algorithm evaluation is necessary to avoid

More information

Low area implementation of AES ECB on FPGA

Low area implementation of AES ECB on FPGA Total AddRoundkey_3 MixCollumns AddRoundkey_ ShiftRows SubBytes 1 Low area implementation of AES ECB on FPGA Abstract This project aimed to create a low area implementation of the Rajindael cipher (AES)

More information

Lecture 3: Modeling in VHDL. EE 3610 Digital Systems

Lecture 3: Modeling in VHDL. EE 3610 Digital Systems EE 3610: Digital Systems 1 Lecture 3: Modeling in VHDL VHDL: Overview 2 VHDL VHSIC Hardware Description Language VHSIC=Very High Speed Integrated Circuit Programming language for modelling of hardware

More information

Dynamic Behavior of RS latches using FIB processing and probe connection

Dynamic Behavior of RS latches using FIB processing and probe connection Dynamic Behavior of RS latches using FIB processing and probe connection Naoya Torii 1,2, Dai Yamamoto 1, Masahiko Takenaka 1, and Tsutomu Matsumoto 2 1 Secure Computing Laboratory, Fujitsu Laboratories

More information

DESIGN OF FAULT SECURE ENCODER FOR MEMORY APPLICATIONS IN SOC TECHNOLOGY

DESIGN OF FAULT SECURE ENCODER FOR MEMORY APPLICATIONS IN SOC TECHNOLOGY DESIGN OF FAULT SECURE ENCODER FOR MEMORY APPLICATIONS IN SOC TECHNOLOGY K.Maheshwari M.Tech VLSI, Aurora scientific technological and research academy, Bandlaguda, Hyderabad. k.sandeep kumar Asst.prof,

More information

EFFICIENT RECURSIVE IMPLEMENTATION OF A QUADRATIC PERMUTATION POLYNOMIAL INTERLEAVER FOR LONG TERM EVOLUTION SYSTEMS

EFFICIENT RECURSIVE IMPLEMENTATION OF A QUADRATIC PERMUTATION POLYNOMIAL INTERLEAVER FOR LONG TERM EVOLUTION SYSTEMS Rev. Roum. Sci. Techn. Électrotechn. et Énerg. Vol. 61, 1, pp. 53 57, Bucarest, 016 Électronique et transmission de l information EFFICIENT RECURSIVE IMPLEMENTATION OF A QUADRATIC PERMUTATION POLYNOMIAL

More information

Implementation and Analysis of an Error Detection and Correction System on FPGA

Implementation and Analysis of an Error Detection and Correction System on FPGA Implementation and Analysis of an Error Detection and Correction System on FPGA Constantin Anton, Laurenţiu Mihai Ionescu, Ion Tutănescu, Alin Mazăre, Gheorghe Şerban University of Piteşti, Romania Abstract

More information

ISSN (Online), Volume 1, Special Issue 2(ICITET 15), March 2015 International Journal of Innovative Trends and Emerging Technologies

ISSN (Online), Volume 1, Special Issue 2(ICITET 15), March 2015 International Journal of Innovative Trends and Emerging Technologies VLSI IMPLEMENTATION OF HIGH PERFORMANCE DISTRIBUTED ARITHMETIC (DA) BASED ADAPTIVE FILTER WITH FAST CONVERGENCE FACTOR G. PARTHIBAN 1, P.SATHIYA 2 PG Student, VLSI Design, Department of ECE, Surya Group

More information

VHDL for Synthesis. Course Description. Course Duration. Goals

VHDL 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 information

A Novel Approach for Parallel CRC generation for high speed application

A Novel Approach for Parallel CRC generation for high speed application 22 International Conference on Communication Systems and Network Technologies A Novel Approach for Parallel CRC generation for high speed application Hitesh H. Mathukiya Electronics and communication Department,

More information

Efficient Majority Logic Fault Detector/Corrector Using Euclidean Geometry Low Density Parity Check (EG-LDPC) Codes

Efficient Majority Logic Fault Detector/Corrector Using Euclidean Geometry Low Density Parity Check (EG-LDPC) Codes Efficient Majority Logic Fault Detector/Corrector Using Euclidean Geometry Low Density Parity Check (EG-LDPC) Codes 1 U.Rahila Begum, 2 V. Padmajothi 1 PG Student, 2 Assistant Professor 1 Department Of

More information

Lab Assignment 1. Developing and Using Testbenches

Lab Assignment 1. Developing and Using Testbenches Lab Assignment 1 Developing and Using Testbenches Task 1 Develop a testbench in VHDL to test and verify the operation of an ALU (Arithmetic Logic Unit), specified using Fig. 1 and Tables 1 and 2. The ALU

More information

A Novel Carry-look ahead approach to an Unified BCD and Binary Adder/Subtractor

A Novel Carry-look ahead approach to an Unified BCD and Binary Adder/Subtractor A Novel Carry-look ahead approach to an Unified BCD and Binary Adder/Subtractor Abstract Increasing prominence of commercial, financial and internet-based applications, which process decimal data, there

More information

PUF Scripts. March Version 0.5. https://cryptography.gmu.edu/

PUF Scripts. March Version 0.5. https://cryptography.gmu.edu/ PUF Scripts USER GUIDE PUF Scripts March 2016 Version 0.5 https://cryptography.gmu.edu/ i PUF Scripts USER GUIDE https://cryptography.gmu.edu/ ii PUF Scripts Document Revisions USER GUIDE Date Version

More information

On-Line Error Detecting Constant Delay Adder

On-Line Error Detecting Constant Delay Adder On-Line Error Detecting Constant Delay Adder Whitney J. Townsend and Jacob A. Abraham Computer Engineering Research Center The University of Texas at Austin whitney and jaa @cerc.utexas.edu Parag K. Lala

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION CHAPTER 1 INTRODUCTION Rapid advances in integrated circuit technology have made it possible to fabricate digital circuits with large number of devices on a single chip. The advantages of integrated circuits

More information

Design of a Pipelined 32 Bit MIPS Processor with Floating Point Unit

Design of a Pipelined 32 Bit MIPS Processor with Floating Point Unit Design of a Pipelined 32 Bit MIPS Processor with Floating Point Unit P Ajith Kumar 1, M Vijaya Lakshmi 2 P.G. Student, Department of Electronics and Communication Engineering, St.Martin s Engineering College,

More information

On the Design of High Speed Parallel CRC Circuits using DSP Algorithams

On the Design of High Speed Parallel CRC Circuits using DSP Algorithams On the Design of High Speed Parallel CRC Circuits using DSP Algorithams 1 B.Naresh Reddy, 2 B.Kiran Kumar, 3 K.Mohini sirisha 1 Dept.of ECE,Kodada institute of Technology & Science for women,kodada,india

More information

Bus Matrix Synthesis Based On Steiner Graphs for Power Efficient System on Chip Communications

Bus Matrix Synthesis Based On Steiner Graphs for Power Efficient System on Chip Communications Bus Matrix Synthesis Based On Steiner Graphs for Power Efficient System on Chip Communications M.Jasmin Assistant Professor, Department Of ECE, Bharath University, Chennai,India ABSTRACT: Power consumption

More information

FPGA Intrinsic PUFs and Their Use in IP Protection

FPGA Intrinsic PUFs and Their Use in IP Protection FPGA Intrinsic PUFs and Their Use in IP Protection Jorge Guajardo*,Sandeep S. Kumar*, Geert-Jan Schrijen**, and Pim Tuyls** * Philips Research Europe, Eindhoven, The Netherlands ** Business Line Intrinsic-ID,

More information

DESIGN AND PERFORMANCE ANALYSIS OF CARRY SELECT ADDER

DESIGN AND PERFORMANCE ANALYSIS OF CARRY SELECT ADDER DESIGN AND PERFORMANCE ANALYSIS OF CARRY SELECT ADDER Bhuvaneswaran.M 1, Elamathi.K 2 Assistant Professor, Muthayammal Engineering college, Rasipuram, Tamil Nadu, India 1 Assistant Professor, Muthayammal

More information

Design and Implementation of Hamming Code on FPGA using Verilog

Design and Implementation of Hamming Code on FPGA using Verilog International Journal of Engineering and Advanced Technology (IJEAT) Design and Implementation of Hamming Code on FPGA using Verilog Ravi Hosamani, Ashwini S. Karne Abstract In mathematics, digital communication

More information

INPUT TO (TM/TC) CHANNEL CODING GREEN BOOK(s) AS DISCUSSED AT THE MEETING IN CRYSTAL CITY, VA (USA) on 12 March Frame Error Control Field

INPUT TO (TM/TC) CHANNEL CODING GREEN BOOK(s) AS DISCUSSED AT THE MEETING IN CRYSTAL CITY, VA (USA) on 12 March Frame Error Control Field INUT TO (TM/TC) CHANNEL CODING GREEN BOOK(s) AS DISCUSSED AT THE MEETING IN CRYSTAL CITY, VA (USA) on 12 March 28 --------- Frame Error Control Field [Reply to comment GC2] - Section 8.4.2 of CCSDS 13.1-G-1

More information

DESIGN AND IMPLEMENTATION OF SDR SDRAM CONTROLLER IN VHDL. Shruti Hathwalia* 1, Meenakshi Yadav 2

DESIGN 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 information

Graph Structure Over Time

Graph Structure Over Time Graph Structure Over Time Observing how time alters the structure of the IEEE data set Priti Kumar Computer Science Rensselaer Polytechnic Institute Troy, NY Kumarp3@rpi.edu Abstract This paper examines

More information

The Encoding Complexity of Network Coding

The Encoding Complexity of Network Coding The Encoding Complexity of Network Coding Michael Langberg Alexander Sprintson Jehoshua Bruck California Institute of Technology Email: mikel,spalex,bruck @caltech.edu Abstract In the multicast network

More information

Reduced Latency Majority Logic Decoding for Error Detection and Correction

Reduced Latency Majority Logic Decoding for Error Detection and Correction Reduced Latency Majority Logic Decoding for Error Detection and Correction D.K.Monisa 1, N.Sathiya 2 1 Department of Electronics and Communication Engineering, Mahendra Engineering College, Namakkal, Tamilnadu,

More information

An FPGA based Implementation of Floating-point Multiplier

An FPGA based Implementation of Floating-point Multiplier An FPGA based Implementation of Floating-point Multiplier L. Rajesh, Prashant.V. Joshi and Dr.S.S. Manvi Abstract In this paper we describe the parameterization, implementation and evaluation of floating-point

More information

Implementation of Full -Parallelism AES Encryption and Decryption

Implementation of Full -Parallelism AES Encryption and Decryption Implementation of Full -Parallelism AES Encryption and Decryption M.Anto Merline M.E-Commuication Systems, ECE Department K.Ramakrishnan College of Engineering-Samayapuram, Trichy. Abstract-Advanced Encryption

More information

EITF35 - Introduction to the Structured VLSI Design (Fall 2016) Interfacing Keyboard with FPGA Board. (FPGA Interfacing) Teacher: Dr.

EITF35 - Introduction to the Structured VLSI Design (Fall 2016) Interfacing Keyboard with FPGA Board. (FPGA Interfacing) Teacher: Dr. EITF35 - Introduction to the Structured VLSI Design (Fall 2016) Interfacing Keyboard with FPGA Board (FPGA Interfacing) Teacher: Dr. Liang Liu v.1.0.0 1 Abstract This document describes the basic behavior

More information

Register Transfer Level in Verilog: Part I

Register Transfer Level in Verilog: Part I Source: M. Morris Mano and Michael D. Ciletti, Digital Design, 4rd Edition, 2007, Prentice Hall. Register Transfer Level in Verilog: Part I Lan-Da Van ( 范倫達 ), Ph. D. Department of Computer Science National

More information

Parallel FIR Filters. Chapter 5

Parallel FIR Filters. Chapter 5 Chapter 5 Parallel FIR Filters This chapter describes the implementation of high-performance, parallel, full-precision FIR filters using the DSP48 slice in a Virtex-4 device. ecause the Virtex-4 architecture

More information

Built-In Self-Test for Programmable I/O Buffers in FPGAs and SoCs

Built-In Self-Test for Programmable I/O Buffers in FPGAs and SoCs Built-In Self-Test for Programmable I/O Buffers in FPGAs and SoCs Sudheer Vemula, Student Member, IEEE, and Charles Stroud, Fellow, IEEE Abstract The first Built-In Self-Test (BIST) approach for the programmable

More information

ESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer)

ESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer) ESE Back End 2.0 D. Gajski, S. Abdi (with contributions from H. Cho, D. Shin, A. Gerstlauer) Center for Embedded Computer Systems University of California, Irvine http://www.cecs.uci.edu 1 Technology advantages

More information

DESIGN AND IMPLEMENTATION OF VLSI SYSTOLIC ARRAY MULTIPLIER FOR DSP APPLICATIONS

DESIGN AND IMPLEMENTATION OF VLSI SYSTOLIC ARRAY MULTIPLIER FOR DSP APPLICATIONS International Journal of Computing Academic Research (IJCAR) ISSN 2305-9184 Volume 2, Number 4 (August 2013), pp. 140-146 MEACSE Publications http://www.meacse.org/ijcar DESIGN AND IMPLEMENTATION OF VLSI

More information

Keywords: Soft Core Processor, Arithmetic and Logical Unit, Back End Implementation and Front End Implementation.

Keywords: Soft Core Processor, Arithmetic and Logical Unit, Back End Implementation and Front End Implementation. ISSN 2319-8885 Vol.03,Issue.32 October-2014, Pages:6436-6440 www.ijsetr.com Design and Modeling of Arithmetic and Logical Unit with the Platform of VLSI N. AMRUTHA BINDU 1, M. SAILAJA 2 1 Dept of ECE,

More information

VHDL IMPLEMENTATION OF FLOATING POINT MULTIPLIER USING VEDIC MATHEMATICS

VHDL IMPLEMENTATION OF FLOATING POINT MULTIPLIER USING VEDIC MATHEMATICS VHDL IMPLEMENTATION OF FLOATING POINT MULTIPLIER USING VEDIC MATHEMATICS I.V.VAIBHAV 1, K.V.SAICHARAN 1, B.SRAVANTHI 1, D.SRINIVASULU 2 1 Students of Department of ECE,SACET, Chirala, AP, India 2 Associate

More information

Field Programmable Gate Array

Field Programmable Gate Array Field Programmable Gate Array System Arch 27 (Fire Tom Wada) What is FPGA? System Arch 27 (Fire Tom Wada) 2 FPGA Programmable (= reconfigurable) Digital System Component Basic components Combinational

More information

ARITHMETIC operations based on residue number systems

ARITHMETIC operations based on residue number systems IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS II: EXPRESS BRIEFS, VOL. 53, NO. 2, FEBRUARY 2006 133 Improved Memoryless RNS Forward Converter Based on the Periodicity of Residues A. B. Premkumar, Senior Member,

More information

Hardware Implementation of TRaX Architecture

Hardware Implementation of TRaX Architecture Hardware Implementation of TRaX Architecture Thesis Project Proposal Tim George I. Project Summery The hardware ray tracing group at the University of Utah has designed an architecture for rendering graphics

More information

Verilog Module 1 Introduction and Combinational Logic

Verilog Module 1 Introduction and Combinational Logic Verilog Module 1 Introduction and Combinational Logic Jim Duckworth ECE Department, WPI 1 Module 1 Verilog background 1983: Gateway Design Automation released Verilog HDL Verilog and simulator 1985: Verilog

More information

FPGA Based FIR Filter using Parallel Pipelined Structure

FPGA Based FIR Filter using Parallel Pipelined Structure FPGA Based FIR Filter using Parallel Pipelined Structure Rajesh Mehra, SBL Sachan Electronics & Communication Engineering Department National Institute of Technical Teachers Training & Research Chandigarh,

More information

A Software LDPC Decoder Implemented on a Many-Core Array of Programmable Processors

A Software LDPC Decoder Implemented on a Many-Core Array of Programmable Processors A Software LDPC Decoder Implemented on a Many-Core Array of Programmable Processors Brent Bohnenstiehl and Bevan Baas Department of Electrical and Computer Engineering University of California, Davis {bvbohnen,

More information

Design of Convolutional Codes for varying Constraint Lengths

Design of Convolutional Codes for varying Constraint Lengths Design of Convolutional Codes for varying Constraint Lengths S VikramaNarasimhaReddy 1, Charan Kumar K 2, Neelima Koppala 3 1,2 MTech(VLSI) Student, 3 Assistant Professor, ECE Department, SreeVidyanikethan

More information

Diagnostic Testing of Embedded Memories Using BIST

Diagnostic Testing of Embedded Memories Using BIST Diagnostic Testing of Embedded Memories Using BIST Timothy J. Bergfeld Dirk Niggemeyer Elizabeth M. Rudnick Center for Reliable and High-Performance Computing, University of Illinois 1308 West Main Street,

More information

ISSN Vol.08,Issue.12, September-2016, Pages:

ISSN Vol.08,Issue.12, September-2016, Pages: ISSN 2348 2370 Vol.08,Issue.12, September-2016, Pages:2273-2277 www.ijatir.org G. DIVYA JYOTHI REDDY 1, V. ROOPA REDDY 2 1 PG Scholar, Dept of ECE, TKR Engineering College, Hyderabad, TS, India, E-mail:

More information

FPGA IMPLEMENTATION OF A NEW BCH DECODER USED IN DIGITAL VIDEO BROADCASTING - SATELLITE - SECOND GENERATION (DVB-S2)

FPGA IMPLEMENTATION OF A NEW BCH DECODER USED IN DIGITAL VIDEO BROADCASTING - SATELLITE - SECOND GENERATION (DVB-S2) FPGA IMPLEMENTATION OF A NEW BCH DECODER USED IN DIGITAL VIDEO BROADCASTING - SATELLITE - SECOND GENERATION (DVB-S2) 1* EL HABTI EL IDRISSI ANAS, 1, 2 EL GOURI RACHID, 3 AHMED LICHIOUI, 1 HLOU LAAMARI

More information

Outline. Trusted Design in FPGAs. FPGA Architectures CLB CLB. CLB Wiring

Outline. Trusted Design in FPGAs. FPGA Architectures CLB CLB. CLB Wiring Outline Trusted Design in FPGAs Mohammad Tehranipoor ECE6095: Hardware Security & Trust University of Connecticut ECE Department Intro to FPGA Architecture FPGA Overview Manufacturing Flow FPGA Security

More information

Verilog for High Performance

Verilog for High Performance Verilog for High Performance Course Description This course provides all necessary theoretical and practical know-how to write synthesizable HDL code through Verilog standard language. The course goes

More information

What Types of ECC Should Be Used on Flash Memory?

What Types of ECC Should Be Used on Flash Memory? What Types of ECC Should Be Used on Flash Memory? Application by Scott Chen 1. Abstract NOR Flash normally does not need ECC (Error-Correcting Code). On the other hand, NAND requires ECC to ensure data

More information

Controller IP for a Low Cost FPGA Based USB Device Core

Controller IP for a Low Cost FPGA Based USB Device Core National Conference on Emerging Trends in VLSI, Embedded and Communication Systems-2013 17 Controller IP for a Low Cost FPGA Based USB Device Core N.V. Indrasena and Anitta Thomas Abstract--- In this paper

More information

Logic, Words, and Integers

Logic, Words, and Integers Computer Science 52 Logic, Words, and Integers 1 Words and Data The basic unit of information in a computer is the bit; it is simply a quantity that takes one of two values, 0 or 1. A sequence of k bits

More information

Power Consumption in 65 nm FPGAs

Power Consumption in 65 nm FPGAs White Paper: Virtex-5 FPGAs R WP246 (v1.2) February 1, 2007 Power Consumption in 65 nm FPGAs By: Derek Curd With the introduction of the Virtex -5 family, Xilinx is once again leading the charge to deliver

More information

LogiCORE IP Floating-Point Operator v6.2

LogiCORE IP Floating-Point Operator v6.2 LogiCORE IP Floating-Point Operator v6.2 Product Guide Table of Contents SECTION I: SUMMARY IP Facts Chapter 1: Overview Unsupported Features..............................................................

More information

Implementing Synchronous Counter using Data Mining Techniques

Implementing Synchronous Counter using Data Mining Techniques Implementing Synchronous Counter using Data Mining Techniques Sangeetha S Assistant Professor,Department of Computer Science and Engineering, B.N.M Institute of Technology, Bangalore, Karnataka, India

More information