Evaluation of FPGA Resources for Built-In Self-Test of Programmable Logic Blocks

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Evaluation of FPGA Resources for Built-In Self-Test of Programmable Logic Blocks"

Transcription

1 Evaluation of FPGA Resources for Built-In Self-Test of Programmable Logic Blocks Charles Stroud, Ping Chen, Srinivasa Konala, Dept. of Electrical Engineering University of Kentucky and Miron Abramovici AT&T Bell Laboratories Murray Hill, NJ Abstract We present a new approach for FPGA testing that exploits the reprogrammability of FPGAs to create Built-In Self-Test (BIST) logic only during off-line test. As a result, BIST is achieved without area or performance penalties to the system function implemented by the FPGA, since the FPGA is reconfigured for normal system operation. An analysis of Look-Up Table (LUT) based FGPA architectures yields a general expression for the number of test sessions and establishes the bounds on FPGA logic resources required to minimize the number of BIST configurations required to completely test all of the programmable logic blocks of an FPGA. 1. Introduction In this paper, we introduce a new approach for FPGA testing that exploits the reprogrammability of an FPGA to create the BIST logic by configuring it only during off-line testing. In this way, testability is achieved without any overhead, since the BIST logic will disappear when the circuit is reconfigured for its normal system operation. In contrast, conventional BIST approaches introduce both area overhead (typically between 10 and 30 percent) and delay penalties. Our approach is applicable to any in-circuit reprogrammable FPGA, such as SRAM-based FPGAs. Its only cost is the additional memory for storing the data required to reconfigure the FPGA; however, this memory is usually part of the test machine or system maintenance processor environment which controls the BIST process, and does not involve resources of the device or the system under test. Reconfiguring FPGAs for system-level testing has been used to test the other circuitry in the system [1-3]; however, these methods do not address the testing of the FPGAs themselves. The FPGA manufacturing test is complicated by the need to cover all possible modes of operation and many nonclassical fault models (faults affecting the programmable interconnect network, delay faults, etc.). Currently, tests are generated manually by configuring several application circuits and exercising them with test vectors developed specifically for each circuit. These circuits share the same set of faults, so it is sufficient to detect a fault in only one circuit. Fault simulation to determine the fault coverage for stuck-at faults is very expensive, since all the application circuits must be simulated. In addition, these tests require long application times and expensive Automatic Test Equipment (ATE). The FPGA manufacturing tests are not reusable for board and system-level testing, which require additional development effort. The traditional approach to system-level testing of FPGAs has been to develop off-line system diagnostic routines which test the FPGAs in the system mode of operation. The development of these diagnostic routines can be timeconsuming and costly, particularly when the system is difficult to test. BIST has been particularly advantageous for field testing of digital systems by providing high faultcoverage tests at the system operating frequency (which, otherwise, is not usually achievable by system diagnostic software), and by reducing diagnostic run-time and diagnostic software development. Reductions in diagnostic run-time result in reducing the mean time to repair and increasing the system availability, while reductions in diagnostic code development help to reduce system development time and cost. Our BIST approach 1 for FPGAs is applicable to all levels of testing (wafer, package, board, and system), and all tests are performed at the normal operating frequency, thus providing at-speed testing. The test controller (ATE, CPU, or maintenance processor) supplies the configurations needed to create the BIST logic, initiates the tests, and reads the test results (pass/fail indication and diagnostic data). Our strategy is to use pseudoexhaustive testing [4] in order to provide maximal fault coverage independent of the intended system function of the FPGAs. Eliminating the need for adding BIST circuitry (or any design-for-test logic) to the system logic in FPGAs reduces the design interval and 1. This material is based upon work supported by the National Science Foundation under Grant No. MIP

2 increases the system functionality that can be implemented in each FPGA. An additional advantage is the potential of using a lower-cost ATE for device and package level test. Since every FPGA is individually tested, our approach provides in-system location of defective devices; such a diagnostic resolution is not always achievable with system diagnostics. In this paper, we describe the testing strategy and analyze the architectural resources needed to provide BIST for all the programmable logic blocks (PLBs) in an FPGA. Although testing the PLBs using the proposed BIST configurations will also detect many of the faults in the programmable interconnect network, it will not provide complete coverage for these faults. Complete testing of the programmable interconnect will be addressed in the next phase of this project. Testing the PLBs will also test the portion of the FPGA programming circuitry associated with the PLBs as well as the FPGA programming interface. We use the AT&T Optimized Reconfigurable Cell Array (ORCA) [5] for the initial design and implementation of the BIST approach, but we emphasize that our technique can be applied to any SRAM-based FPGA, such as Xilinx [6] or Altera Flex 8000 [7] series FPGAs. The remainder of this paper is organized as follows. Section 2 presents an overview of the proposed BIST approach. Section 3 analyzes the FPGA logic resources needed to implement the BIST logic and to minimize the number of BIST configurations required to test the FPGA. Section 4 summarizes the results obtained thus far in terms of the number of BIST configurations developed for and their application to the ORCA device. The paper concludes in Section 5. PLB TPG ORA LUT FF ORCA N TS N PLB N TPG N ORA N Table 1: Abbreviations Programmable Logic Block Test Pattern Generator Output Response Analyzer Block (PLB) Under Test Look-Up Table Flip-Flop Optimized Reconfigurable Cell Array Number of Test Sessions Number of PLBs in FPGA Number of PLBs used as TPGs Number of PLBs used as ORAs Number of PLBs under test 2. Overview of the FPGA BIST Approach Our FPGA BIST process is a sequence of test phases, where every phase consists of the following steps: 1) configure the circuit, 2) initiate the test, 3) generate test patterns, 4) analyze the responses to produce a pass/fail indication, and 5) read the test results. In step 1, the test controller interacts with the FPGA under test to (re)configure its logic by retrieving the BIST configuration from the configuration storage and loading it into the FPGA. Then the test controller initiates the test (step 2) and reads the results (step 5) using the FPGA's boundary-scan Test Access Port [8] or other system specific means. (Practically all recently developed FPGAs, such as ORCA [5], XC4000 [6] and Flex8000 [7], feature boundary scan.) Steps 3 and 4 are concurrently done by the BIST logic within the device, and do not involve I/O pins. Thus the I/O pins of the FPGA are not tested during BIST, and this requires additional tests during manufacturing testing. In system testing, the I/O pins are tested together with the board connectivity using boundary scan tests. Although the same basic approach is applied at all levels of testing, there are some differences between manufacturing testing done at the wafer and package levels, and maintenance/field testing done at the board and system levels. These differences are summarized in Table 2. One difference results from the need to reconfigure an FPGA that has passed the in-system test for its normal system function; hence the normal device configuration must be stored on disk along with the BIST configurations. Table 2: Differences in FPGA testing levels Testing Level Wafer/Package Board/System Test Controller Configuration Storage Functional Reconfiguration ATE ATE Memory NO CPU or maintenance processor Disk or other mass storage YES To support the self-test done in steps 3 and 4, some of the logic is configured as test pattern generators (TPGs) and output response analyzers (ORAs). Our strategy relies on pseudoexhaustive testing in which all subcircuits of the device are tested with exhaustive patterns. This results in maximal fault coverage without explicit fault model assumptions and without fault simulation. Pseudoexhaustive testing is guaranteed to detect any fault that changes the function of the PLB without increasing its number of states; this set includes all single and multiple stuck-at faults. Many FPGAs contain RAM modules, whose exhaustive testing is impractical. For these modules we use standard RAM test

3 sequences, which are known to be exhaustive for the fault models specific to RAMs [9,10]. Figure 1 shows a typical structure of a PLB, composed of a memory block, a flip-flop (FF) block, and a combinational output logic block; for example, this structure is featured in the ORCA programmable function unit [5], in the XC4000 configurable logic block [6], and in the Altera Flex8000 logic element [7]. The memory blocks can be configured as RAMs or combinational look-up tables (LUTs). In most cases, the cell has no feedback loops and the FFs can be directly accessed by bypassing the LUT (as shown by the dotted line). This simple structure, where the inputs and the outputs of every subcircuit are easy to control and to observe, simplifies the pseudoexhaustive testing of the cell. LUT/RAM FFs Output Logic Figure 1. Typical FPGA PLB structure In general, the simplest method for output response analysis - comparison with the expected response - is difficult to use in most BIST applications because of the expense involved either in storing the reference response or in generating it from a copy of the circuit under test. In the FPGA BIST approach, however, the circuits under test are identical PLBs and all that is needed is to create the ORAs to compare their outputs. Unlike the signature-based compression circuits found in most BIST applications, comparator-based ORAs do not suffer from the aliasing problem that occurs when some faulty circuits produce the good circuit signature. As long as the PLBs being compared by the same ORA do not fail the same way at the same time, no aliasing will be encountered with the comparison-based approach. However, if these PLBs are fed by the same faulty TPG, the applied tests will be incomplete, and a faulty PLB may escape detection. To avoid this problem, we configure the logic so that different TPGs feed the PLBs being compared by the same ORA, and all TPGs are synchronized; that is, they generate the same test pattern at the same time. Therefore, the strategy is to configure a group of PLBs as pseudoexhaustive TPGs and comparison-based ORAs, and another group as blocks under test (s). Every will be repeatedly reconfigured to test it completely in its various modes of operation. We define a test session as a sequence of test phases that test the s in every configuration. Once the s have been tested, the roles of the PLBs are changed so that in the next test session previous s become TPGs or ORAs, and vice versa. Clearly, we need at least two test sessions to test all PLBs. Since testing time is a major component of the testing cost, a major goal of the testing strategy is to minimize the number of test sessions. In the next section, we will analyze the relations between some architectural features of an FPGA and the number of test sessions needed for a complete test. 3. Evaluation of FPGA Resources The number of test sessions (N TS ) is a function of the number of PLBs in the FPGA (N PLB ) as well as the number of s (N ). The general expression for N TS is given by: N N TS = PLB (1a) N Also, the following relation must hold for any FPGA architecture in terms of the number of PLBs required to act as TPGs (N TPG ) and ORAs (N ORA ) during a testing session. N (1b) + N TPG + N ORA N PLB During most of the configurations used to completely test the s, the TPGs work as binary counters to supply exhaustive test patterns to the m-input s (not counting the clock input). Since a PLB has more inputs than outputs, several PLBs are needed to construct a single m-bit counter. As explained in the previous section, different TPGs must feed the s whose outputs are compared by the same ORA. Thus the number of TPGs required is equal to C, where C represents the number of PLB outputs that can be compared by a single LUT. This results in a total number of PLBs used for TPGs, N TPG, given by: N TPG = C m ---- (2) f where f is the number of flip-flops per PLB. Figure 2 shows the structure of the FPGA as it would be configured during a test session. An ORA consists of a LUT that compares the corresponding outputs from C s and a flip-flop to record the first mismatch. The feedback from the flip-flop output to one of LUT inputs disables further comparisons after the first error has been recorded. In general, several ORAs may be implemented in the same PLB, depending on the number of independent LUTs in a PLB, L. Here we consider LUTs to be independent if their sets of inputs are disjoint in at least one PLB configuration. Each one of the C TPGs drives a group of n s. Each has m inputs and O outputs. The C n O outputs from the s are compared by O groups of n ORAs, where each ORA monitors C outputs, and the ith group of ORAs receives the ith output from n s. Then the number of

4 PLBs required to be configured as ORA circuits, N ORA, is given by: O n N ORA = (3) L The values of C and n also determine the total number of s (N ) as follows: N = C n The values of C, O, L, and f are functions of the PLB architecture for the given FPGA being tested. By substituting the expressions for the numbers of PLBs used during a test session for the implementation of TPGs, ORAs, and s (given by Equations 2 through 4) into Equations 1a and 1b, we obtain the following lower bound for N TS : N PLB C + O --- L N TS C N PLB C m ---- f The number of s in each of the C groups, given by n, is another one of the values of interest to be determined for a given FPGA. The value of n used to derive Equation 5 represents the maximum value for the number of s in each of the C groups for that particular value of N TS and is given by: N PLB C m --- f n max C + O --- L This maximum value may be difficult to implement practically because of routing constraints. Therefore, (4) (5) (6) substituting the value of N from Equation 4 into Equation 1a, we get lower limit on n for the same value of N TS. n n min = N PLB N TS C However, the minimum value of n given by Equation 7 does not consider the proper balance of s, TPGs, and ORAs that must be maintained as a function of the PLB architecture. As a result, we consider the following relation, which is obtained by eliminating N PLB from Equations 1a and 1b: N + N TPG + N ORA N N TS Substituting the expressions from Equations 2 through 4 into Equation 8 and solving for n, we obtain the minimum value of n which will provide the proper balance of, TPG, and ORA functions for a BIST session based on the PLB architecture (which we refer to as n arch ): C m ---- n n f arch = O C ( N TS 1) --- L This minimum value of n is a function of the structure of the PLB and is necessary to maintain the proper balance of TPG, ORA, and functions for this BIST approach. For example, in the ORCA PLB, there are L=2 independent LUTs, with each LUT having C+1=5 inputs; hence C=4. Since each PLB has m=18 inputs, the maximum number of flip-flops required for a TPG to generate exhaustive test patterns, f, is also 18. Finally, there are O=5 outputs from each PLB which must be compared by the ORAs, since the (7) (8) (9) TPG m outputs to n s m inputs O outputs O outputs LUT ORA FF TPG m outputs to n s LUT ORA FF C TPGs m inputs C groups of n s C+1 inputs O groups of n ORAs Figure 2. FPGA structure for a test session

5 carry-out signal for the ripple mode can be observed at one of the five outputs of the PLB. Then from Equation 9 we find that n 14 in order to achieve the minimum number of test sessions (N TS =2). Therefore, for n=14, we obtain the minimum values N TPG =20, N ORA =35, and N =56 from Equations 2 through 4, respectively. This requires a minimum of 111 PLBs in an ORCA to be able to completely test all PLBs with two test sessions. Only the smallest of the ORCA series (the AT1C03 with 100 PLBs) fails to meet this criteria and will require three test sessions to completely test all its PLBs. These data are summarized in Table 3 and compared to the Xilinx 4000 and Altera Flex 8000 series FPGAs in terms of the resource parameters for each FPGA and the minimum resources required for N TS =2 using Equation 9. In the case of the Xilinx series 4000 FPGAs, the smallest four FPGAs (4002: 64 PLBs, 4003: 100 PLBs, 4004: 144 PLBs, and 4005: 196 PLBs) will require three test sessions. In the case of the Altera Flex 8000 series FPGA, the smallest FPGA (8282: 208 PLBs) also requires three test sessions. The minimum value of n is of particular importance since it will require less logic resources as well as routing resources in the FPGA when compared to larger values of n. This will, in turn, provide the best opportunity for successful placement and routing of the BIST configurations in the FPGA during actual implementation. Therefore, the final minimum value of n which ensures that the proper balance of s, ORAs, and TPGs is maintained while also ensuring that the FPGA can be tested in the desired number of test sessions is a function of both n arch and n min. As a result, n min(final) is given by the maximum of the two minimum values for n in Equations 7 and 9. C m N ---- n min( final) = max{ PLB , f }(10) N TS C O C ( N TS 1) --- L The minimum and maximum values of n obtained for some ORCA, Xilinx, and Altera FPGAs are given in Table 4 along with the corresponding values for N TS, N TPG, N ORA, and N. Note that N TPG is a function of the PLB structure and not a function of the total number of PLBs in the FPGA. For those cases where the total number of PLBs used for TPG, ORA, and functions is less than the total number of PLBs in the FPGA, the unused PLBs could be used to buffer the TPG outputs which have high fan-out. On the other hand, when all PLBs in the FPGA are required for BIST resources, the number of test sessions may need to be increased if limitations in the routing resources prevent successful implementation of the BIST configurations. 4. Experimental Results Based on a gate level model of the ORCA 1C series PLB, we determined that nine BIST configurations are sufficient to completely test a [11] in every functional mode of operation. The memory requirements and the configuration download time depend on the size of the FPGA. For the Table 3: BIST Resource requirements for FPGAs Parameter Resource ORCA Xilinx 4000 Altera 8000 C comparisons/lut O outputs/plb L LUTs/PLB m FFs/TPG=inputs/PLB f FFs/PLB Minimum Requirements ORCA Xilinx 4000 Altera 8000 n arch (for N TS =2) N TPG N ORA N N PLB

6 largest 1C series ORCA (the ATT1C09), approximately 16 Kbytes of storage are needed per configuration, which means about 144 Kbytes for all nine configurations. The same nine configurations are applied to the s tested in each of the test sessions. The configuration download time also depends on the type of interface between the configuration storage media and the FPGA itself. Download time for the ORCA 1C series FPGAs varies from 2 to 35 msec. while the execution time for the BIST sequence is approximately 15 msec. at a 10 MHz clock rate. This would correspond to approximately 1 second of testing time required to completely test all of the PLBs in the FPGA. Testing time and configuration memory storage can be reduced for system-level testing by testing the FPGA only for the specific modes of operation in which its PLBs are used by the system function. A more detailed discussion of the nine BIST configurations can be found in [11]. For FPGAs which require only two test sessions, a total of 18 configurations would be required to completely test all PLBs in the FPGA. These 18 configurations compare favorably with the 32 configurations currently used to test production ORCA devices [12]. However, it should be noted that the 32 configurations used for manufacturing include complete testing of the programmable interconnection network, testing of the configuration memory and its read back circuitry, and testing of the FPGA I/O buffers. Parametric testing and speed sorting is performed with additional configurations of the FPGA. 5. Conclusions We have proposed a new BIST approach for the programmable logic blocks in SRAM-based FPGAs. Our approach takes advantage of the reprogrammability of FPGAs by reconfiguring the FPGA to test itself only during off-line testing. As a result, it completely eliminates the area overhead and the performance penalty associated with traditional BIST techniques. Because we no longer need testability hardware in the design, all logic resources in the FPGA are available for system functionality. In addition, hardware design and diagnostic software development intervals can be reduced since the FPGA BIST approach is generic and is applicable to all of the SRAM-based FPGAs in the system. Since the test sequences are generic in that they are a function of the FPGA architecture and not a function of what is programmed into the FPGA, this technique can also be used at every level of testing, from wafer- and package-level manufacturing tests to board- and system-level field tests. The BIST configurations developed for this approach also test the portion of the programming interface of the FPGA which is associated with the PLBs. The exception is the programming read-back circuitry, which can be tested by simply reading back each configuration after it has been programmed. The BIST Table 4: BIST resource evaluation for various FPGA architectures Series N PLB n min n max N TS N TPG N ORA (min) N ORA (max) N (min) N (max) ATT1C ATT1C ATT1C ATT1C XC XC XC XC EPF EPF EPF EPF

7 configurations also test some (but not all) of the programmable interconnection network. BIST configurations for complete testing of the interconnection network will be developed during the next phase of this project. Acknowledgments This work was also supported in part by a grant from the University of Kentucky Center for Robotics and Manufacturing Systems. Finally, the authors gratefully acknowledge the support, assistance, and encouragement of Carolyn Spivak and Al Dunlop of AT&T Bell Laboratories. References [1] B. Fawcett, Applications of Reconfigurable Logic, Third Annual Workshop on Field-Programmable Logic and Applications, Oxford, Sept [2] B. New, Boundary-Scan Emulator for XC3000, XAPP Applications Handbook, Xilinx, Oct [3] A. Russ and C. Stroud, Non-Intrusive Built-In Self-Test for Field Programmable Gate Array and Multi-Chip Module Applications, to be published in Proc. IEEE Automatic Test Conf., [4] E. J. McCluskey, Verification Testing - A Pseudoexhaustive Test Technique, IEEE Trans. on Computers, Vol. C-33, No. 6, pp , June, [5] Optimized Reconfigurable Cell Array (ORCA) 1C Series Field-Programmable Gate Arrays, Data Sheet, AT&T Microelectronics, May [6] The Programmable Logic Data Book, Xilinx, Inc., [7] Flex 8000 Programmable Logic Device Family, Data Sheet, Altera Corp., May [8] Standard Test Access Port and Boundary-Scan Architecture, IEEE Standard P , IEEE Standards Board, May [9] A.J. van de Goor, Testing Semiconductor Memories Theory and Practice, John Wiley and Sons, [10] M.S. Abadir and H.K. Reghbati, Functional Testing of Semiconductor Random Access Memories, Computing Surveys, Vol. 15, No. 3, pp , September [11] P. Chen, Built-In Self-Test Configurations for Field Programmable Gate Array Logic Blocks, M.S.E.E.Thesis, University of Kentucky, August, [12] C. Spivak, private communications, October, 1995.

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

Atmel AT94K FPSLIC Architecture Field Programmable Gate Array

Atmel AT94K FPSLIC Architecture Field Programmable Gate Array Embedded Processor Based Built-In Self-Test and Diagnosis of FPGA Core in FPSLIC John Sunwoo (Logic BIST) Srinivas Garimella (RAM BIST) Sudheer Vemula (I/O Cell BIST) Chuck Stroud (Routing BIST) Jonathan

More information

Interconnect Testing in Cluster-Based FPGA Architectures

Interconnect Testing in Cluster-Based FPGA Architectures Interconnect Testing in Cluster-Based FPGA Architectures Ian G. Harris Department of Electrical and Computer Engineering University of Massachusetts Amherst, MA 01003 harris@ecs.umass.edu Russell Tessier

More information

Circuit Partitioning for Application-Dependent FPGA Testing

Circuit Partitioning for Application-Dependent FPGA Testing Circuit Partitioning for Application-Dependent FPGA Testing by Rui Zhen Feng B.Eng, Hefei University of Technology, 1996 A Thesis Submitted in Partial Fulfillment of the Requirements for the Degree of

More information

Testing Configurable LUT-Based FPGAs

Testing Configurable LUT-Based FPGAs JOURNAL OF INFORMATION SCIENCE AND ENGINEERING FPGA TESTING16, 733-750 (2000) 733 Testing Configurable LUT-Based FPGAs Department of Electronic Engineering Fu Jen Catholic University Hsinchuang, Taipei,

More information

Programmable Memory Blocks Supporting Content-Addressable Memory

Programmable Memory Blocks Supporting Content-Addressable Memory Programmable Memory Blocks Supporting Content-Addressable Memory Frank Heile, Andrew Leaver, Kerry Veenstra Altera 0 Innovation Dr San Jose, CA 95 USA (408) 544-7000 {frank, aleaver, kerry}@altera.com

More information

Mobile Robot Path Planning Software and Hardware Implementations

Mobile Robot Path Planning Software and Hardware Implementations Mobile Robot Path Planning Software and Hardware Implementations Lucia Vacariu, Flaviu Roman, Mihai Timar, Tudor Stanciu, Radu Banabic, Octavian Cret Computer Science Department, Technical University of

More information

INTRODUCTION TO FPGA ARCHITECTURE

INTRODUCTION TO FPGA ARCHITECTURE 3/3/25 INTRODUCTION TO FPGA ARCHITECTURE DIGITAL LOGIC DESIGN (BASIC TECHNIQUES) a b a y 2input Black Box y b Functional Schematic a b y a b y a b y 2 Truth Table (AND) Truth Table (OR) Truth Table (XOR)

More information

ECE 331 Digital System Design

ECE 331 Digital System Design ECE 331 Digital System Design Tristate Buffers, Read-Only Memories and Programmable Logic Devices (Lecture #17) The slides included herein were taken from the materials accompanying Fundamentals of Logic

More information

Design and Implementation of Microcode based Built-in Self-Test for Fault Detection in Memory and its Repair

Design and Implementation of Microcode based Built-in Self-Test for Fault Detection in Memory and its Repair Design and Implementation of Microcode based Built-in Self-Test for Fault Detection in Memory and its Repair C. Padmini Assistant Professor(Sr.Grade), ECE Vardhaman college of Engineering, Hyderabad, INDIA

More information

Chapter 5: ASICs Vs. PLDs

Chapter 5: ASICs Vs. PLDs Chapter 5: ASICs Vs. PLDs 5.1 Introduction A general definition of the term Application Specific Integrated Circuit (ASIC) is virtually every type of chip that is designed to perform a dedicated task.

More information

Nanometer technologies enable higher-frequency designs

Nanometer technologies enable higher-frequency designs By Ron Press & Jeff Boyer Easily Implement PLL Clock Switching for At-Speed Test By taking advantage of pattern-generation features, a simple logic design can utilize phase-locked-loop clocks for accurate

More information

Each DSP includes: 3-input, 48-bit adder/subtractor

Each DSP includes: 3-input, 48-bit adder/subtractor Virtex-4 DSP Architecture 2 2 DSP slices per tile 16-256 tiles in 1-8 columns Each DSP includes: 3-input, 48-bit adder/subtractor P P = Z±(X+Y+Cin) Optional accum reg C (48) 18x18-bit 2's-comp multiplier

More information

TESTING SET-UP FOR DIGITAL PART OF THE POWER- METER IC

TESTING SET-UP FOR DIGITAL PART OF THE POWER- METER IC TESTING SET-UP FOR DIGITAL PART OF THE POWER- METER IC Borisav Jovanović, Miljana Sokolović, Milan Savić, Milun Jevtić, Predrag Petković Laboratory for Electronic Design Automation, Faculty of Electronic

More information

APPLICATION NOTE. Gate Count Capacity Metrics for FPGAs. Introduction. Maximum Logic Gates

APPLICATION NOTE. Gate Count Capacity Metrics for FPGAs. Introduction. Maximum Logic Gates APPLICATION NOTE Gate Count Capacity Metrics for FPGAs XAPP 059 Feb. 1, 1997 (Version 1.1) Application Note Summary Three metrics are defined to describe FPGA device capacity: Maximum Logic Gates, Maximum

More information

Modeling and Simulation of Microcode-based Built-In Self Test for Multi-Operation Memory Test Algorithms

Modeling and Simulation of Microcode-based Built-In Self Test for Multi-Operation Memory Test Algorithms IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 3,. 2, May 2010 36 Modeling and Simulation of Microcode-based Built-In Self Test for Multi-Operation Memory Test Algorithms Dr. R.K.

More information

WITH integrated circuits, especially system-on-chip

WITH integrated circuits, especially system-on-chip IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 14, NO. 11, NOVEMBER 2006 1227 Improving Linear Test Data Compression Kedarnath J. Balakrishnan, Member, IEEE, and Nur A. Touba, Senior

More information

FPGA Polyphase Filter Bank Study & Implementation

FPGA Polyphase Filter Bank Study & Implementation FPGA Polyphase Filter Bank Study & Implementation Raghu Rao Matthieu Tisserand Mike Severa Prof. John Villasenor Image Communications/. Electrical Engineering Dept. UCLA 1 Introduction This document describes

More information

Design and Implementation of Built-in-Self Test and Repair

Design and Implementation of Built-in-Self Test and Repair P.Ravinder, N.Uma Rani / International Journal of Engineering Research and Applications (IJERA) Design and Implementation of Built-in-Self Test and Repair P.Ravinder*, N.Uma Rani** * (Guru Nanak Institute

More information

Improving Reconfiguration Speed for Dynamic Circuit Specialization using Placement Constraints

Improving Reconfiguration Speed for Dynamic Circuit Specialization using Placement Constraints Improving Reconfiguration Speed for Dynamic Circuit Specialization using Placement Constraints Amit Kulkarni, Tom Davidson, Karel Heyse, and Dirk Stroobandt ELIS department, Computer Systems Lab, Ghent

More information

Implementation of Ripple Carry and Carry Skip Adders with Speed and Area Efficient

Implementation of Ripple Carry and Carry Skip Adders with Speed and Area Efficient ISSN (Online) : 2278-1021 Implementation of Ripple Carry and Carry Skip Adders with Speed and Area Efficient PUSHPALATHA CHOPPA 1, B.N. SRINIVASA RAO 2 PG Scholar (VLSI Design), Department of ECE, Avanthi

More information

DESIGN AND ANALYSIS OF SOFTWARE FAULTTOLERANT TECHNIQUES FOR SOFTCORE PROCESSORS IN RELIABLE SRAM-BASED FPGA

DESIGN AND ANALYSIS OF SOFTWARE FAULTTOLERANT TECHNIQUES FOR SOFTCORE PROCESSORS IN RELIABLE SRAM-BASED FPGA DESIGN AND ANALYSIS OF SOFTWARE FAULTTOLERANT TECHNIQUES FOR SOFTCORE PROCESSORS IN RELIABLE SRAM-BASED FPGA 1 Vatsya Tiwari M.Tech Student Department of computer science & engineering Abstract. This paper

More information

An Advanced and more Efficient Built-in Self-Repair Strategy for Embedded SRAM with Selectable Redundancy

An Advanced and more Efficient Built-in Self-Repair Strategy for Embedded SRAM with Selectable Redundancy An Advanced and more Efficient Built-in Self-Repair Strategy for Embedded SRAM with Selectable Redundancy A. Sharone Michael.1 #1, K.Sivanna.2 #2 #1. M.tech student Dept of Electronics and Communication,

More information

Built-in self-repair (BISR) technique widely Used to repair embedded random access memories (RAMs)

Built-in self-repair (BISR) technique widely Used to repair embedded random access memories (RAMs) Built-in self-repair (BISR) technique widely Used to repair embedded random access memories (RAMs) V.SRIDHAR 1 M.RAJENDRA PRASAD 2 1 Assistant Professor, ECE, Vidya Jyothi Institute of Technology, Hyderabad

More information

Driving Toward Higher I DDQ Test Quality for Sequential Circuits: A Generalized Fault Model and Its ATPG

Driving Toward Higher I DDQ Test Quality for Sequential Circuits: A Generalized Fault Model and Its ATPG Driving Toward Higher I DDQ Test Quality for Sequential Circuits: A Generalized Fault Model and Its ATPG Hisashi Kondo Kwang-Ting Cheng y Kawasaki Steel Corp., LSI Division Electrical and Computer Engineering

More information

CMOS Testing: Part 1. Outline

CMOS Testing: Part 1. Outline CMOS Testing: Part 1 Introduction Fault models Stuck-line (single and multiple) Bridging Stuck-open Test pattern generation Combinational circuit test generation Sequential circuit test generation ECE

More information

4DM4 Lab. #1 A: Introduction to VHDL and FPGAs B: An Unbuffered Crossbar Switch (posted Thursday, Sept 19, 2013)

4DM4 Lab. #1 A: Introduction to VHDL and FPGAs B: An Unbuffered Crossbar Switch (posted Thursday, Sept 19, 2013) 1 4DM4 Lab. #1 A: Introduction to VHDL and FPGAs B: An Unbuffered Crossbar Switch (posted Thursday, Sept 19, 2013) Lab #1: ITB Room 157, Thurs. and Fridays, 2:30-5:20, EOW Demos to TA: Thurs, Fri, Sept.

More information

Design and Implementation of Automatic Test Equipment IP Module

Design and Implementation of Automatic Test Equipment IP Module Design and Implementation of Automatic Test Equipment IP Module S. Fransi SFP e engineering Munich, Germany G. L. Farré, L. G. Deiros, and S. B. Manich Electrical Engineering Dept. (EEL) Universitat Politècnica

More information

Modeling And Simulation Of Microcode Based Asynchronous Memory Built In Self Test For Fault Detection Using Verilog

Modeling And Simulation Of Microcode Based Asynchronous Memory Built In Self Test For Fault Detection Using Verilog Modeling And Simulation Of Microcode Based Asynchronous Memory Built In Self Test For Fault Detection Using Verilog Amruta P. Auradkar # and Dr. R. B. Shettar * # M.Tech.,2 nd year, Digital Electronics,

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

Designing and Characterization of koggestone, Sparse Kogge stone, Spanning tree and Brentkung Adders

Designing and Characterization of koggestone, Sparse Kogge stone, Spanning tree and Brentkung Adders Vol. 3, Issue. 4, July-august. 2013 pp-2266-2270 ISSN: 2249-6645 Designing and Characterization of koggestone, Sparse Kogge stone, Spanning tree and Brentkung Adders V.Krishna Kumari (1), Y.Sri Chakrapani

More information

Introduction to GAL Device Architectures

Introduction to GAL Device Architectures ntroduction to GAL evice Architectures Overview n 195, Lattice Semiconductor introduced a new type of programmable logic device (PL) that transformed the PL market: the Generic Array Logic (GAL) device.

More information

VLSI Testing. Lecture Fall 2003

VLSI Testing. Lecture Fall 2003 VLSI Testing Lecture 25 8-322 Fall 23 Announcement Homework 9 is due next Thursday (/2) Exam II is on Tuesday (/8) in class Review Session: When: Next Monday (/7) afternoon, 4pm 6pm Where: B3, HH 2 Outline

More information

Testing Digital Systems I

Testing Digital Systems I Testing Digital Systems I Lecture 1: Introduction Instructor: M. Tahoori Copyright 2011, M. Tahoori TDS I: Lecture 1 1 Today s Lecture Logistics Course Outline Introduction Copyright 2011, M. Tahoori TDS

More information

EFFICIENT MEMORY BUILT - IN SELF TEST FOR EMBEDDED SRAM USING PA ALGORITHM

EFFICIENT MEMORY BUILT - IN SELF TEST FOR EMBEDDED SRAM USING PA ALGORITHM EFFICIENT MEMORY BUILT - IN SELF TEST FOR EMBEDDED SRAM USING PA ALGORITHM G.PRAKASH #1, S.SARAVANAN #2 #1 M.Tech, School of Computing #2 Assistant Professor, SASTRA University, Thanjavur. #1 Prakashganesh.be@gmail.com,

More information

VLSI Test Technology and Reliability (ET4076)

VLSI Test Technology and Reliability (ET4076) VLSI Test Technology and Reliability (ET4076) Lecture 8 (1) Delay Test (Chapter 12) Said Hamdioui Computer Engineering Lab Delft University of Technology 2009-2010 1 Learning aims Define a path delay fault

More information

Testing Principle Verification Testing

Testing Principle Verification Testing ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES Test Process and Test Equipment Overview Objective Types of testing Verification testing Characterization testing Manufacturing testing Acceptance

More information

Digital Systems Testing

Digital Systems Testing Digital Systems Testing Verilog HDL for Design and Test Moslem Amiri, Václav Přenosil Embedded Systems Laboratory Faculty of Informatics, Masaryk University Brno, Czech Republic amiri@mail.muni.cz prenosil@fi.muni.cz

More information

Improving Memory Repair by Selective Row Partitioning

Improving Memory Repair by Selective Row Partitioning 200 24th IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems Improving Memory Repair by Selective Row Partitioning Muhammad Tauseef Rab, Asad Amin Bawa, and Nur A. Touba Computer

More information

Chapter 7. Logic Diagnosis. VLSI EE141 Test Principles and Architectures Ch. 7 - Logic Diagnosis - P. 1

Chapter 7. Logic Diagnosis. VLSI EE141 Test Principles and Architectures Ch. 7 - Logic Diagnosis - P. 1 Chapter 7 Logic Diagnosis VLSI EE4 Test Principles and Architectures Ch. 7 - Logic Diagnosis - P. Outline Introduction Combinational Logic Diagnosis Scan Chain Diagnosis Logic BIST Diagnosis Conclusion

More information

BISTed cores and Test Time Minimization in NOC-based Systems

BISTed cores and Test Time Minimization in NOC-based Systems BISTed cores and Test Time Minimization in NOC-based Systems Érika Cota 1 Luigi Carro 1,2 Flávio Wagner 1 Marcelo Lubaszewski 1,2 1 PPGC - Instituto de Informática 2 PPGEE - Depto. Engenharia Elétrica

More information

JPG A Partial Bitstream Generation Tool to Support Partial Reconfiguration in Virtex FPGAs

JPG A Partial Bitstream Generation Tool to Support Partial Reconfiguration in Virtex FPGAs JPG A Partial Bitstream Generation Tool to Support Partial Reconfiguration in Virtex FPGAs Anup Kumar Raghavan Motorola Australia Software Centre Adelaide SA Australia anup.raghavan@motorola.com Peter

More information

WEB-BASED ACCESS TO EDUCATIONAL PROTOTYPING BOARDS USED IN INSTRUMENTATION LABORATORY

WEB-BASED ACCESS TO EDUCATIONAL PROTOTYPING BOARDS USED IN INSTRUMENTATION LABORATORY WEB-BASED ACCESS TO EDUCATIONAL PROTOTYPING BOARDS USED IN INSTRUMENTATION LABORATORY C.G. Haba, L.Breniuc "Gh.Asachi" Technical University of Iaşi, Iaşi, Romania E-mail: cghaba@ee.tuiasi.ro Abstract:

More information

Single Event Upset Mitigation Techniques for SRAM-based FPGAs

Single Event Upset Mitigation Techniques for SRAM-based FPGAs Single Event Upset Mitigation Techniques for SRAM-based FPGAs Fernanda de Lima, Luigi Carro, Ricardo Reis Universidade Federal do Rio Grande do Sul PPGC - Instituto de Informática - DELET Caixa Postal

More information

Modeling and Simulation of Multi-Operation Microcode-based Built-in Self Test for Memory Fault Detection and Repair

Modeling and Simulation of Multi-Operation Microcode-based Built-in Self Test for Memory Fault Detection and Repair Modeling and Simulation of Multi-Operation Microcode-based Built-in Self Test for Memory Fault Detection and Repair Dr. R.K. Sharma and Aditi Sood Abstract As embedded memory area on-chip is increasing

More information

Y. Tsiatouhas. VLSI Systems and Computer Architecture Lab. Embedded Core Testing (ΙΕΕΕ SECT std) 2

Y. Tsiatouhas. VLSI Systems and Computer Architecture Lab. Embedded Core Testing (ΙΕΕΕ SECT std) 2 CMOS INTEGRATED CIRCUIT DESIGN TECHNIQUES University of Ioannina Embedded Testing (ΙΕΕΕ 1500 Std. SECT) Dept. of Computer Science and Engineering Y. Tsiatouhas CMOS Integrated Circuit Design Techniques

More information

EMBEDDED SOPC DESIGN WITH NIOS II PROCESSOR AND VHDL EXAMPLES

EMBEDDED SOPC DESIGN WITH NIOS II PROCESSOR AND VHDL EXAMPLES EMBEDDED SOPC DESIGN WITH NIOS II PROCESSOR AND VHDL EXAMPLES Pong P. Chu Cleveland State University A JOHN WILEY & SONS, INC., PUBLICATION PREFACE An SoC (system on a chip) integrates a processor, memory

More information

Best Practices for Incremental Compilation Partitions and Floorplan Assignments

Best Practices for Incremental Compilation Partitions and Floorplan Assignments Best Practices for Incremental Compilation Partitions and Floorplan Assignments December 2007, ver. 1.0 Application Note 470 Introduction The Quartus II incremental compilation feature allows you to partition

More information

Analysis and Improvement of Virtex-4 Block RAM Built-In Self-Test. and Introduction to Virtex-5 Block RAM Built-In Self-Test.

Analysis and Improvement of Virtex-4 Block RAM Built-In Self-Test. and Introduction to Virtex-5 Block RAM Built-In Self-Test. Analysis and Improvement of Virtex-4 Block RAM Built-In Self-Test and Introduction to Virtex-5 Block RAM Built-In Self-Test Except where reference is made to the work of others, the work described in this

More information

An Integrated ECC and Redundancy Repair Scheme for Memory Reliability Enhancement

An Integrated ECC and Redundancy Repair Scheme for Memory Reliability Enhancement An Integrated ECC and Redundancy Repair Scheme for Memory Reliability Enhancement Chin-LungSu,Yi-TingYeh,andCheng-WenWu Laboratory for Reliable Computing (LaRC) Department of Electrical Engineering National

More information

The University of Reduced Instruction Set Computer (MARC)

The University of Reduced Instruction Set Computer (MARC) The University of Reduced Instruction Set Computer (MARC) Abstract We present our design of a VHDL-based, RISC processor instantiated on an FPGA for use in undergraduate electrical engineering courses

More information

The Embedded computing platform. Four-cycle handshake. Bus protocol. Typical bus signals. Four-cycle example. CPU bus.

The Embedded computing platform. Four-cycle handshake. Bus protocol. Typical bus signals. Four-cycle example. CPU bus. The Embedded computing platform CPU bus. Memory. I/O devices. CPU bus Connects CPU to: memory; devices. Protocol controls communication between entities. Bus protocol Determines who gets to use the bus

More information

How Effective are Compression Codes for Reducing Test Data Volume?

How Effective are Compression Codes for Reducing Test Data Volume? How Effective are Compression Codes for Reducing Test Data Volume Anshuman Chandra, Krishnendu Chakrabarty and Rafael A Medina Dept Electrical & Computer Engineering Dept Electrical Engineering & Computer

More information

Keysight Technologies Expanding IEEE Std Boundary-Scan Architecture Beyond Manufacturing Test of PCBA

Keysight Technologies Expanding IEEE Std Boundary-Scan Architecture Beyond Manufacturing Test of PCBA Keysight Technologies Expanding IEEE Std 1149.1 Boundary-Scan Architecture Beyond Manufacturing Test of PCBA Article Reprint This paper was first published in the 2017 IPC APEX Technical Conference, CA,

More information

VLSI Testing. Virendra Singh. Bangalore E0 286: Test & Verification of SoC Design Lecture - 7. Jan 27,

VLSI Testing. Virendra Singh. Bangalore E0 286: Test & Verification of SoC Design Lecture - 7. Jan 27, VLSI Testing Fault Simulation Virendra Singh Indian Institute t of Science Bangalore virendra@computer.org E 286: Test & Verification of SoC Design Lecture - 7 Jan 27, 2 E-286@SERC Fault Simulation Jan

More information

LSN 6 Programmable Logic Devices

LSN 6 Programmable Logic Devices LSN 6 Programmable Logic Devices Department of Engineering Technology LSN 6 What Are PLDs? Functionless devices in base form Require programming to operate The logic function of the device is programmed

More information

IMPLEMENTATION OF A FAST MPEG-2 COMPLIANT HUFFMAN DECODER

IMPLEMENTATION OF A FAST MPEG-2 COMPLIANT HUFFMAN DECODER IMPLEMENTATION OF A FAST MPEG-2 COMPLIANT HUFFMAN ECOER Mikael Karlsson Rudberg (mikaelr@isy.liu.se) and Lars Wanhammar (larsw@isy.liu.se) epartment of Electrical Engineering, Linköping University, S-581

More information

FPGA architecture and design technology

FPGA architecture and design technology CE 435 Embedded Systems Spring 2017 FPGA architecture and design technology Nikos Bellas Computer and Communications Engineering Department University of Thessaly 1 FPGA fabric A generic island-style FPGA

More information

Memory. Objectives. Introduction. 6.2 Types of Memory

Memory. Objectives. Introduction. 6.2 Types of Memory Memory Objectives Master the concepts of hierarchical memory organization. Understand how each level of memory contributes to system performance, and how the performance is measured. Master the concepts

More information

Bit-Fixing in Pseudorandom Sequences for Scan BIST

Bit-Fixing in Pseudorandom Sequences for Scan BIST IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 20, NO. 4, APRIL 2001 545 Bit-Fixing in Pseudorandom Sequences for Scan BIST Nur A. Touba, Member, IEEE, and Edward J.

More information

RUN-TIME RECONFIGURABLE IMPLEMENTATION OF DSP ALGORITHMS USING DISTRIBUTED ARITHMETIC. Zoltan Baruch

RUN-TIME RECONFIGURABLE IMPLEMENTATION OF DSP ALGORITHMS USING DISTRIBUTED ARITHMETIC. Zoltan Baruch RUN-TIME RECONFIGURABLE IMPLEMENTATION OF DSP ALGORITHMS USING DISTRIBUTED ARITHMETIC Zoltan Baruch Computer Science Department, Technical University of Cluj-Napoca, 26-28, Bariţiu St., 3400 Cluj-Napoca,

More information

FAULT-TOLERANT EMBEDDED SYSTEMS WITH MULTIPLE FPGA IMPLEMENTED WATCHDOGS

FAULT-TOLERANT EMBEDDED SYSTEMS WITH MULTIPLE FPGA IMPLEMENTED WATCHDOGS FAULT-TOLERANT EMBEDDED SYSTEMS WITH MULTIPLE FPGA IMPLEMENTED WATCHDOGS Mária Pohronská and Tibor Krajčovič Slovak University of Technology, Faculty of Informatics and Information Technologies Ilkovičova

More information

VLSI Testing. Fault Simulation. Virendra Singh. Indian Institute of Science Bangalore

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

On Designs of Radix Converters Using Arithmetic Decompositions

On Designs of Radix Converters Using Arithmetic Decompositions On Designs of Radix Converters Using Arithmetic Decompositions Yukihiro Iguchi 1 Tsutomu Sasao Munehiro Matsuura 1 Dept. of Computer Science, Meiji University, Kawasaki 1-51, Japan Dept. of Computer Science

More information

An Efficient Parallel Transparent Diagnostic BIST

An Efficient Parallel Transparent Diagnostic BIST An Efficient Parallel Transparent Diagnostic BIST D. C. Huang and W. B. Jone Department of CS & IE, National Chung-Cheng University, Taiwan, R.O.C. Abstract- In this paper, we propose a new transparent

More information

Picture of memory. Word FFFFFFFD FFFFFFFE FFFFFFFF

Picture of memory. Word FFFFFFFD FFFFFFFE FFFFFFFF Memory Sequential circuits all depend upon the presence of memory A flip-flop can store one bit of information A register can store a single word, typically 32-64 bits Memory allows us to store even larger

More information

14. Using Altera Enhanced Configuration Devices

14. Using Altera Enhanced Configuration Devices 14. Using Altera Enhanced Configuration Devices S52014-1.0 Chapter 14, Using Altera Enhanced Configuration Devices replaces AN 218: Using Altera Enhanced Configuration Devices. Introduction Concurrent

More information

PowerPlay Early Power Estimator User Guide for Cyclone III FPGAs

PowerPlay Early Power Estimator User Guide for Cyclone III FPGAs PowerPlay Early Power Estimator User Guide for Cyclone III FPGAs 101 Innovation Drive San Jose, CA 95134 www.altera.com Software Version: QII v9.0 SP2 Document Version: 2.0 Document Date: June 2009 UG-01013-2.0

More information

Digital System Test and Testable Design

Digital System Test and Testable Design Digital System Test and Testable Design wwwwwwwwwwww Zainalabedin Navabi Digital System Test and Testable Design Using HDL Models and Architectures Zainalabedin Navabi Worcester Polytechnic Institute Department

More information

TEST FUNCTION SPECIFICATION IN SYNTHESIS

TEST FUNCTION SPECIFICATION IN SYNTHESIS TEST FUNCTION SPECIFICATION IN SYNTHESIS Vishwani D. Agrawal and Kwang-Ting Cbeng AT&T Bell Laboratories Murray Hill, New Jersey 07974 ABSTRACT - We present a new synthesis for testability method in which

More information

DESIGN AND IMPLEMENTATION OF MOD-6 SYNCHRONOUS COUNTER USING VHDL

DESIGN AND IMPLEMENTATION OF MOD-6 SYNCHRONOUS COUNTER USING VHDL Arid Zone Journal of Engineering, Technology and Environment. August, 2013; Vol. 9, 17-26 DESIGN AND IMPLEMENTATION OF MOD-6 SYNCHRONOUS COUNTER USING VHDL Dibal, P.Y. (Department of Computer Engineering,

More information

discrete logic do not

discrete logic do not Welcome to my second year course on Digital Electronics. You will find that the slides are supported by notes embedded with the Powerpoint presentations. All my teaching materials are also available on

More information

Design and Implementation of FPGA- based Systolic Array for LZ Data Compression

Design and Implementation of FPGA- based Systolic Array for LZ Data Compression Design and Implementation of FPGA- based Systolic Array for LZ Data Compression Mohamed A. Abd El ghany Electronics Dept. German University in Cairo Cairo, Egypt E-mail: mohamed.abdel-ghany@guc.edu.eg

More information

FPGA Implementation of Multiplierless 2D DWT Architecture for Image Compression

FPGA Implementation of Multiplierless 2D DWT Architecture for Image Compression FPGA Implementation of Multiplierless 2D DWT Architecture for Image Compression Divakara.S.S, Research Scholar, J.S.S. Research Foundation, Mysore Cyril Prasanna Raj P Dean(R&D), MSEC, Bangalore Thejas

More information

IEEE P1500, a Standard for System on Chip DFT

IEEE P1500, a Standard for System on Chip DFT page 1(6) IEEE P1500, a Standard for System on Chip DFT Kim Petersén HDC, Hardware Design Center 723 50 Västerås Sweden Email: kim.petersen@hdc.se key words: IP, DFT, SoC, BIST, BISR ABSTRACT This document

More information

TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES

TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES Kewal K. Saluja University of Wisconsin - Madison Motivation, Fault Models and some Callenges Overview Motivation Technology, Test cost, and VLSI realization

More information

Design of Low Power Digital CMOS Comparator

Design of Low Power Digital CMOS Comparator Design of Low Power Digital CMOS Comparator 1 A. Ramesh, 2 A.N.P.S Gupta, 3 D.Raghava Reddy 1 Student of LSI&ES, 2 Assistant Professor, 3 Associate Professor E.C.E Department, Narasaraopeta Institute of

More information

Programmable Logic Design I

Programmable Logic Design I Programmable Logic Design I Read through each section completely before starting so that you have the benefit of all the directions. Put on a grounded wrist strap (cf. Getting Started) before touching

More information

Lab 4: Register File and Memory 50 points Instructor: Yifeng Zhu Due: One week

Lab 4: Register File and Memory 50 points Instructor: Yifeng Zhu Due: One week Objectives: Lab 4: Register File and Memory 50 points Instructor: Yifeng Zhu Due: One week Build Register File Build Instruction Memory and Data Memory 1. Overview A combinational circuit neither contains

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

Role of OS in virtual memory management

Role of OS in virtual memory management Role of OS in virtual memory management Role of OS memory management Design of memory-management portion of OS depends on 3 fundamental areas of choice Whether to use virtual memory or not Whether to use

More information

Two-level Reconfigurable Architecture for High-Performance Signal Processing

Two-level Reconfigurable Architecture for High-Performance Signal Processing International Conference on Engineering of Reconfigurable Systems and Algorithms, ERSA 04, pp. 177 183, Las Vegas, Nevada, June 2004. Two-level Reconfigurable Architecture for High-Performance Signal Processing

More information

Scanline-based rendering of 2D vector graphics

Scanline-based rendering of 2D vector graphics Scanline-based rendering of 2D vector graphics Sang-Woo Seo 1, Yong-Luo Shen 1,2, Kwan-Young Kim 3, and Hyeong-Cheol Oh 4a) 1 Dept. of Elec. & Info. Eng., Graduate School, Korea Univ., Seoul 136 701, Korea

More information

Minimizing System Interruption During Configuration Using TransFR Technology

Minimizing System Interruption During Configuration Using TransFR Technology October 2015 Technical Note TN1087 Introduction One of the fundamental benefits of using an FPGA is the ability to reconfigure its functionality without removing the device from the system. A number of

More information

Power Estimation and Management for LatticeECP/EC and LatticeXP Devices

Power Estimation and Management for LatticeECP/EC and LatticeXP Devices for LatticeECP/EC and LatticeXP Devices September 2012 Introduction Technical Note TN1052 One of the requirements when using FPGA devices is the ability to calculate power dissipation for a particular

More information

Parameterized Convolution Filtering in a Field Programmable Gate Array

Parameterized Convolution Filtering in a Field Programmable Gate Array Parameterized Convolution Filtering in a Field Programmable Gate Array Richard G. Shoup Interval Research Palo Alto, California 94304 Abstract This paper discusses the simple idea of parameterized program

More information

Design of Two Different 128-bit Adders. Project Report

Design of Two Different 128-bit Adders. Project Report Design of Two Different 128-bit Adders Project Report By Vladislav uravin Concordia ID: 5505763 COEN6501: Digital Design & Synthesis Offered by Professor Asim Al-Khalili Concordia University December 2004

More information

Fast SEU Detection and Correction in LUT Configuration Bits of SRAM-based FPGAs

Fast SEU Detection and Correction in LUT Configuration Bits of SRAM-based FPGAs Fast SEU Detection and Correction in LUT Configuration Bits of SRAM-based FPGAs Hamid R. Zarandi,2, Seyed Ghassem Miremadi, Costas Argyrides 2, Dhiraj K. Pradhan 2 Department of Computer Engineering, Sharif

More information

Design of Dual Port SDRAM Controller with Time Slot Register

Design of Dual Port SDRAM Controller with Time Slot Register International Journal of Engineering Research and Development e-issn: 2278-067X, p-issn: 2278-800X, www.ijerd.com Volume 8, Issue 2 (August 2013), PP.76-81 Design of Dual Port SDRAM Controller with Time

More information

Section 3. System Integration

Section 3. System Integration Section 3. System Integration This section includes the following chapters: Chapter 9, Configuration, Design Security, and Remote System Upgrades in the Cyclone III Device Family Chapter 10, Hot-Socketing

More information

Typical applications where a CPLD may be the best design approach:

Typical applications where a CPLD may be the best design approach: By: Carlos Barberis, dba Bartek Technologies Description of Bartek s CPLD1 development board. For some of us CPLD s are familiar devices and for others just another acronym in the electronic device industry.

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

A Novel Pseudo 4 Phase Dual Rail Asynchronous Protocol with Self Reset Logic & Multiple Reset

A Novel Pseudo 4 Phase Dual Rail Asynchronous Protocol with Self Reset Logic & Multiple Reset A Novel Pseudo 4 Phase Dual Rail Asynchronous Protocol with Self Reset Logic & Multiple Reset M.Santhi, Arun Kumar S, G S Praveen Kalish, Siddharth Sarangan, G Lakshminarayanan Dept of ECE, National Institute

More information

Chapter 4 Implementation of a Test Circuit

Chapter 4 Implementation of a Test Circuit Chapter 4 Implementation of a Test Circuit We use a simplified cost model (which is the number of transistors) to evaluate the performance of our BIST design methods. Although the simplified cost model

More information

On-Chip Design Verification with Xilinx FPGAs

On-Chip Design Verification with Xilinx FPGAs On-Chip Design Verification with Xilinx FPGAs Application Note 1456 Xilinx Virtex-II Pro devices have redefined FPGAs. The Virtex-II Pro brings with it not only a denser and faster FPGA, but an IBM PPC

More information

Multicycle-Path Challenges in Multi-Synchronous Systems

Multicycle-Path Challenges in Multi-Synchronous Systems Multicycle-Path Challenges in Multi-Synchronous Systems G. Engel 1, J. Ziebold 1, J. Cox 2, T. Chaney 2, M. Burke 2, and Mike Gulotta 3 1 Department of Electrical and Computer Engineering, IC Design Research

More information

FIELD PROGRAMMABLE GATE ARRAYS (FPGAS)

FIELD PROGRAMMABLE GATE ARRAYS (FPGAS) FIELD PROGRAMMABLE GATE ARRAYS (FPGAS) 1 Roth Text: Chapter 3 (section 3.4) Chapter 6 Nelson Text: Chapter 11 Programmable logic taxonomy Lab Device 2 Field Programmable Gate Arrays Typical Complexity

More information

NIOS CPU Based Embedded Computer System on Programmable Chip

NIOS CPU Based Embedded Computer System on Programmable Chip 1 Objectives NIOS CPU Based Embedded Computer System on Programmable Chip EE8205: Embedded Computer Systems This lab has been constructed to introduce the development of dedicated embedded system based

More information

A Hardware Task-Graph Scheduler for Reconfigurable Multi-tasking Systems

A Hardware Task-Graph Scheduler for Reconfigurable Multi-tasking Systems A Hardware Task-Graph Scheduler for Reconfigurable Multi-tasking Systems Abstract Reconfigurable hardware can be used to build a multitasking system where tasks are assigned to HW resources at run-time

More information