2 Manufacturing testing

Size: px
Start display at page:

Download "2 Manufacturing testing"

Transcription

1 2 MANUFACTURING TESTING 3 2 Manufacturing testing 2. Definition During the development process of a chip, several different types of testing are used. While designing, it is useful to simulate the design with a (functional) testbench in order to verify whether the design conforms to its specifications. This can be seen as a kind of testing, but should rather be called (design) verification. When the chip is ready for production, prototype testing is done. This is a form of hardware testing which verifies both the design and technology. Its purpose is to find any major design- and technology-related faults. Manufacturing or post-production chip testing is a subset of prototype testing and is also used for every chip throughout its lifetime. Whenever we refer to testing in this thesis, we mean this type of testing. Its goal is to check whether a design implemented in silicon is free of manufacturing defects. Unfortunately, the fabrication process of chips is not perfect. Common defects are shorts, opens and bridges. The silicon itself is not always perfect either. It might contain crystal imperfections or surface impurities. All kinds of defects may be present in a fabricated chip. The focus in (manufacturing) testing is on circuit topology rather than functional behavior. Firstly, it is not its purpose to verify the circuit s functionality. Secondly, the functionality is in general too complicated to base the testing on. A main driver in manufacturing testing is cost, since every chip must be tested. Test time must be absolutely minimized and is directly proportional to the amount of test vectors needed. While the correct functionality of a circuit can often only be guaranteed by trying all possible input combinations, its structural correctness can be verified by toggling each line in the circuit. For example, consider a 6- bit adder. Two 6-bit input words make a total of 2 32 = 4, 294, 967, 296 possible input combinations. By comparison, about input patterns will suffice for the structural testing of such an adder circuit (see also Section 5.). 2.2 Sources for more information As this chapter only gives a cursory overview of relevant aspects about testing and testability, we refer to more elaborate sources beforehand: ˆ A general introduction to manufacturing testing, also used for the master course Testable Design and Test of Integrated Systems, is given by [2]. ˆ More on BIST, as well as manufacturing testing in general, can be found in [3]. ˆ [4] is a clear introduction to testability and the Synopsys tools with many practical hints. ˆ [5] is a self-written introduction to the Synopsys tools. ˆ [23], [24], [25] and [26] are major test conferences and symposia. Their proceedings contain papers on cutting-edge testing issues. 2.3 Fault models and test types Physical defects do not generally allow a direct mathematical treatment of testing. For that we need mathematical mechanisms, called fault models, as a means to abstractly represent manufacturing defects. To make a clear distinction in terminology, the word defect will only be used to mean a physical defect and fault will refer to an abstract representation of a defect in a fault model. Fault models can be grouped in the following hierarchical levels:

2 2 MANUFACTURING TESTING 4 Behavioral level The behavioral level has few implementation details. Fault simulation at this level is the fastest, but there is no obvious correlation to manufacturing defects. High-level fault models play a greater role in simulation-based design verification than in testing. Exceptions are the functional fault models of memories. Since the function of memory is simple, exhaustive functional tests are possible and normally used in practice. Logic level The logic or gate level consists of a netlist of gates. The stuck-at fault model at this level is the most popular fault model in digital testing. It is both simple and technology-independent. Other fault models at this level are bridging faults and delay faults. Component level Transistor and other lower levels are mainly used in analog circuit testing. An example at this level that is also used for digital circuitry is the quiescent current (I DDQ ) fault model. While switching, CMOS circuits exhibit an elevated current, which dies out quickly to a small quiescent current after the gate outputs settle to a steady state. Defects such as transistors stuck-on, shorted wires and shorts from transistor gates to drains elevate the quiescent current. There are several categories of test types, each targeting a different set of defects: Structural testing uses the logic levels of the device s input and output pins to detect the most common static defects, such as opens and shorts in the circuit interconnections. A pattern of s and s is applied to the input pins and then the logical results at the output pins are measured. In general, a defect produces a logical value at the outputs different from the expected one. This type of testing is used for the stuck-at fault model. I DDQ testing measures the quiescent power supply current rather than pin voltages, detecting defects not easily detected by other types of testing, such as transistor stuck-on/stuck-open or bridging defects. I DDQ testing equipment applies a set of patterns to the device, lets the current settle and then measures for excessive current draw. At-speed testing checks the amount of time it takes to change logic states. A circuit might operate correctly at a slow clock rate and then fail when operated at the normal system speed. Delay variations exist between chips due to statistical variations in the manufacturing process, resulting in defects such as partially conducting transistors and resistive interconnections. The purpose of at-speed testing is to detect these types of problems. It is done by running test patterns through the circuit at the normal system clock speed. This type of testing is used for delay faults, such as transition delay and path delay faults. The Stuck-At Fault (SAF) model has been the most popular fault model in the past several decades. We look at it in more detail in the Section 2.4. It will also remain the main focus in the rest of this chapter. As designs move to.3-micron processes and below, however, the defect spectrum is changing and the standard stuck-at tests alone will no longer be sufficient. The number of resistive defects is growing, which manifest themselves as speed-related problems as opposed to hard stuck-at failures. To help achieve a more adequate defect coverage for these processes, the stuck-at faults must be supplemented by delay faults [8]. 2.4 Stuck-at faults A stuck-at fault is assumed to only affect the interconnections between logic gates. Each connecting line can have two types of faults: stuck-at- and stuck-at-, commonly written as s-a- and s-a-. Several stuck-at faults can be simultaneously present in the circuit. A circuit with n lines can have 3 n possible stuck line combinations. Each line can be in one of the three states s-a-, s-a- or fault-free. All combinations except one having all lines in the fault-free state are counted as faults. Clearly, even a moderate value of n will give an enormously large number of multiple stuck-at faults. It is common practice, therefore, to model only single stuck-at faults. An n-line circuit has only 2n single stuck-at faults. The node of a stuck-at fault must be controllable and observable for the fault to be detectable. A node is controllable if it can be driven to a specified logic value by setting the primary inputs to specific values. A

3 2 MANUFACTURING TESTING 5 Primary Input (PI) is an input that can be directly controlled. A node is observable if its response can be predicted and the fault effect can be propagated to the primary outputs where the response can be measured. A Primary Output (PO) is an output that can be directly observed. The set of input stimuli and expected response values is called a test pattern or test vector. The controllability and observability are pivotal points for the testability of a design and will be a recurring theme in the rest of this chapter and indeed the whole thesis. While at first glance the gate-level single stuck-at fault model does not appear to be attractive in terms of its ability to accurately model defects, studies of actual faulty VLSI devices have shown that test vectors developed using this fault model can be very effective when applied at-speed [3]. 2.5 Test pattern generation 2.5. Path sensitization This section outlines a method called path sensitization to generate test patterns for stuck-at faults in a combinational logic circuit with no feedback paths. The approach consists of three steps:. Fault sensitization. The fault is activated by forcing the signal at that location to a value opposite to the stuck-at value, so that there is a behavioral difference between a good and faulty circuit. This step is also known as fault activation or fault excitation. 2. Fault propagation. The fault effect is propagated through one or more paths to the POs. This step is also known as path sensitization. 3. Line justification. The signal assignments previously made to sensitize a fault or propagate its effect are justified by setting the PIs of the circuit. This step is also known as fault justification. In the second and third step, a conflict can be found, where a necessary signal assignment contradicts some previously made assignment. This forces the ATPG algorithm (see Section 2.5.3) to backtrack, i.e. discard a previously made signal assignment and choose an alternative. A A B X s-a- / / / Y B C? X s-a- / / Y (a) Detectable fault (b) Undetectable fault Figure 5: Path sensitization As an example, consider the circuits in Figure 5. Figure 5a shows a circuit with a target stuck-at fault at the second input of the upper AND gate. To activate the fault, the net connected to this port must be set to (the opposite value). Propagating the fault is done by setting the first input of the AND gate to. This is the only way to propagate the fault through the gate. Its output is in a fault-free circuit, but if the

4 2 MANUFACTURING TESTING 6 stuck-at fault is present. This is indicated by /. Propagating further through the OR gate can only be done by setting its second input to. Now we can see the fault at output Y. Line justification is done from output Y to the inputs. The bottom AND gate must have a at the second input. All other signal values are already determined. Luckily, the assigned values are consistent with the NAND gate. The test pattern is with expected output. Figure 5b (a hazard-free multiplexer) shows an example where no test pattern can be found. Fault activation, propagation and line justification give us the values as shown in the figure. Here, there is a conflict between the value of the second input of the middle AND gate and the first input of the bottom AND gate. The values are opposite from each other, while they are connected to the same net. No choices were made while assigning the signals. It must be concluded that the fault is undetectable Fault collapsing A circuit can contain a significant number of faults that behave identically to other faults. These faults are said to be equivalent. Two faults of a Boolean circuit are equivalent if and only if they transform the circuit such that the two faulty circuits have identical output functions. Figure 6 shows which stuck-at faults are equivalent for an AND and OR gate. Similar equivalences can be found for all logic gates. The process of selecting one fault from each set of equivalent faults is called fault collapsing. This reduces the number of stuck-at faults from the initial number of 2n (where n is the number of lines in the circuit). s-a- s-a- s-a- s-a- s-a- s-a- s-a- s-a- s-a- s-a- s-a- s-a- (a) AND gate (b) OR gate Figure 6: Equivalent faults If all tests for a fault F detect another fault F2, then F2 is said to dominate F. When two faults F and F2 dominate each other, then they are equivalent. In an alternative form of fault collapsing, known as dominance fault collapsing, the fault set is further reduced. In this form of fault collapsing, the dominating faults are eliminated from the equivalence collapsed sets. There are some problems with dominance fault collapsing though, which limit its use [2]. In practice, often only equivalent fault collapsing is used Automatic test pattern generation Automatic Test Pattern Generation (ATPG) is implemented by software. An ATPG run consists of two main steps: generating patterns and performing fault simulation to determine which faults the patterns detect. Two typical methods for pattern generation are random and deterministic. Additionally, ATPG tools can fault simulate patterns from an external set. Random Pattern Generation (RPG) can be used as an initial ATPG step to improve the tool s performance. It is an inexpensive way to find some patterns. From a set of randomly generated patterns, those patterns that detect faults are identified and stored in the test pattern set. An ATPG tool uses deterministic test pattern generation when it creates a test pattern for a specific fault. The procedure is to pick a fault from the fault list, create a pattern to detect the fault, fault simulate the pattern and check to make sure the pattern detects the fault. Possibly, the pattern detects other faults as well. ATPG algorithms can follow the method of path sensitization outlined in Section Well-known algo-

5 2 MANUFACTURING TESTING 7 rithms for combinational logic are the D-algorithm, PODEM and FAN [2]. Most ATPG tools use proprietary techniques to speed up and extend these basic algorithms. Randomly-generated patterns may not be very good, in the sense that a more complex pattern may exist that activates a higher percentage of the circuit, and in one test determines whether a number of faults are present, rather than just one or two. At the end of ATPG, all test patterns can be fault simulated in the reverse order of their generation, so that the patterns from RPG are simulated last. When the fault coverage reaches %, all remaining RPG patterns are discarded. Almost all digital designs of any significant size are realized as sequential circuits. These circuits contain combinational logic and memory elements like flip-flops. Their testing is more complex than that of (purely) combinational logic. Since they have an internal state, the circuit must be brought to a known state before a test pattern can be applied. After a pattern is applied, the final state must be inferred indirectly from the POs. In comparison, faults in a combinational circuit can be detected by a single vector. ATPG algorithms for sequential circuits are more complex and the sequence of test vectors that needs to be applied can be long Fault classes and coverage ATPG software may not be able to generate a test pattern for every fault. When this happens, it must perform further analysis before classifying the fault. Faults requiring this analysis include possibly detected, undetectable and ATPG-untestable faults. ATPG tool TetraMAX distinguishes the following main fault classes: Detected Faults for which a pattern is found that distinguishes a good device from a bad one. Possibly detected These are faults that may or may not be detected, since it causes an undefined output value (X). This output is only potentially different from the correct one. A possible cause is a fault that prevents the initialization of a memory element. Undetectable Some faults are impossible to detect by any means. These typically result from reconvergent fan-out combined with redundant logic, global resets or power-up initialization circuitry. Other possibilities are unconnected lines or ties to logic or. The undetectable fault in Figure 5b is caused by redundancy masking the fault effect. Undetectable faults form an interesting situation. One cannot tell whether the fault exists or not, so that the system is not affected by its presence. ATPG-untestable These faults are not necessarily intrinsically untestable, but are untestable using ATPG methods. These faults cannot be proven to be undetectable and might be testable using other methods like functional tests or with less stringent constraints for the ATPG tool. Not detected Faults are only classified in this group when the analysis for the fault was not completed or aborted. This can be caused by ATPG iteration limits or by designs that are too complex for the ATPG algorithm. TetraMAX defines the fault coverage as the number of detected faults divided by the total number of faults. Since not all faults are detectable, this figure is in general. The test coverage TC is the number of detected faults divided by the number of faults detectable by ATPG. It is calculated as: TC = DT + x.pt T UD y.au where DT is the number of detected faults, PT is the number of possibly detected faults, x is the probability of detection for these faults, T is the total number of faults, UD is the number of undetectable faults, AU is the number of ATPG-undetectable faults and y is the credit assigned to these faults. The default value of x is.5; y is by default. The sets of faults are uncollapsed by default [6].

6 2 MANUFACTURING TESTING 8 What TetraMAX refers to as test coverage is also often called fault coverage, as do we in this thesis. Only TetraMAX results will show the term test coverage. This figure can be converted to a percentage by multiplying it with. It should be as close to (or %) as possible. Each manufacturer has its own minimum value. Some require 99.9%. Note that the coverage computation depends on the used fault model. The one shown here is for the stuck-at model. Also note that the test or fault coverage is only an approximation of the defect coverage. The approximation will be better if the fault model more accurately reflects the physical defects Memory testing As mentioned before, the testing of memory arrays (SRAM or DRAM) can be based on its function, since it has a very regular structure. Test patterns can be generated algorithmically. The most used algorithms are the MATS (Modified Algorithmic Test Sequence) and March tests of which different variants exist. The March C- algorithm in particular has been observed to provide a very high defect coverage. What all algorithms basically do is walk through the memory and read/write values on the current address. The March tests all have a complexity of αn, where α is an integer and N 2 is the array size. The March C- algorithm has a complexity of N [2]. 2.6 Design for testability Traditionally, the design and test processes were kept separate, with test considered only at the end of the design cycle. But in contemporary design flows, test merges with design much earlier in the process, creating what is called a Design-for-Test (DfT) process flow. There are some good design practices to improve the overall testability of a design. They include: ˆ Minimizing asynchronous logic (like flip-flop sets and resets); ˆ Isolating clocks from the logic; ˆ Using only D flip-flops as memory elements; ˆ Minimizing redundant logic; ˆ Minimizing combinational feedback paths. Besides these general guidelines, there are two main approaches to DfT: ad-hoc and structured techniques. Testable circuitry is both controllable and observable. Ad-hoc techniques are aimed at improving the observability or controllability of specific points in the circuit. This requires manual inspection of the circuitry, but can greatly improve its testability. Structured DfT provides a more systematic approach for enhancing the testability, which can be automated. The most common structured DfT technique is scan design, which modifies the sequential circuitry of the design Ad-hoc techniques A design can contain a number of points that are difficult to control or observe. By adding special circuitry at certain locations called test points, one can increase the testability of the design. Figure 7a shows a part of a circuit that poses a testability problem. The OR gate blocks any fault effects from propagating through the gate, since the output will always be. To be able to observe any fault effect, we need to insert an observation test point at the input side of the OR gate. The output side of the gate is uncontrollable. To be able to control any circuitry behind the gate, we need to insert a controllability test point at the output side of the OR gate.

7 2 MANUFACTURING TESTING 9 VCC/ VCC/ observation test point controllability test point to PO from PI Sel test mode (a) Before (b) After Figure 7: Test point insertion Figure 7b shows a possible implementation for the test points. An unobservable point can be connected to a new PO. This is a costly solution, however. Another possibility is connecting the point to an extra flip-flop to store the signal value. This flip-flop can be inserted in a scan chain (see Section 2.6.2), so that its value can be read out during testing. As a controllability test point we can use a multiplexer. An extra PI test mode is needed to indicate whether the circuit is in normal functional mode or testing mode. In normal functional mode, the system data is propagated. In testing mode, an alternative source drives the output. This source can be a new PI or, alternatively, a flip-flop. Any solution that makes a point observable/controllable can be used as a test point. However, not all options are equally good in terms of additional pins, silicon area and performance degradation. The identification of uncontrollable/unobservable points is generally a manual process, but ATPG software can be of some assistance. They typically use testability measures like SCOAP (Sandia Controllability/Observability Analysis Program) to determine paths with the least resistance. These measures give some indication about how controllable/observable a certain node is. The SCOAP measure can be viewed in TetraMAX s GUI, for example. Do note that it may not be trivial to translate a node in the gate-level implementation (after synthesis) back to the original design (in VHDL or other HDL) Scan design Many designs contain memory elements, like latches or flip-flops. These elements make the circuit sequential rather than combinational. The goal of scan design is to make a sequential circuit (which is difficult to test) behave like a combinational circuit (which is easier to test) during the testing process. Achieving this goal involves replacing sequential elements with scannable sequential elements, called scan cells, and then connecting the scan cells together into scan chains. One can then use these serially-connected scan cells (forming a shift register) to shift data in and out when the design is in scan mode. This way, the memory elements have become pseudo-inputs and pseudo-outputs. Figure 8: Scan replacement

8 2 MANUFACTURING TESTING 2 Figure 8 illustrates the scan replacement. Replacing all memory elements by scannable ones is referred to as full-scan design. This may not be acceptable because of area and timing constraints. Adding scan circuitry increases the size and power usage of the design, because the scan cells are generally larger than the non-scan cells they replace and the interconnections used for the scan signals also occupy additional area. Furthermore, the performance (speed) decreases marginally. Alternatively, one can replace only a subset of memory elements. This is referred to as partial-scan design. The decision to use full scan or partial scan has a significant impact on the ATPG tool. Full-scan designs allow combinational ATPG methods, which require minimal test generation effort, but carry a significant amount of area overhead. On the other hand, partial to non-scan designs consume far less area overhead, but require sequential ATPG techniques, which demand significantly more test generation effort. Also, the number and complexity of the test patterns will be higher, and hence testing costs. An other consideration is whether to use a single scan chain for all memory elements or multiple shorter scan chains. In case of multiple scan chains, data can be parallelly shifted in and out, which shortens the test time, but more pins are needed and more scan boards may be needed as well (see Section 2.7). The scan boards do need less depth (memory) for the shorter chains though. There are several different scan architectures or scan styles: Multiplexed flip-flop This is a scannable version of a flip-flop. Figure 9 shows its design. It assumes all memory elements in the circuit are D flip-flops, which can be replaced by a multiplexed scan flip-flop. Din SI SE D DFF Sel clk CK Q SO/ Dout Figure 9: Multiplexed scan flip-flop The multiplexer chooses between the normal system data, which is connected to Din (previously directly connected to input D of the flip-flop), and Scan Input SI. The selection signal is called Scan Enable (SE). A new PI is needed in the design to provide this signal to every scan flip-flop. During normal functional mode, SE is kept low. The output of the flip-flop simultaneously functions as Scan Output SO and Dout. The scan flip-flops can be connected in a chain by connecting SO to SI of the next scan flip-flop. Clocked scan This style is similar to the multiplexed flip-flop, but uses a dedicated test clock to shift in scan data instead of a multiplexer. LSSD (Level-Sensitive Scan Design) This style replaces D latches by a master and slave latch, forming a (master-slave) flip-flop. In normal mode, it is level-sensitive. The master latch captures system data using the system clock and sends it to the normal system output. In test mode, it is edge-triggered. Two test clocks trigger the shifting of test data through both the master and slave latch to the scan output. A single scan style must be used for a whole design. If a design only uses (D) flip-flops, one can use any scan style, but the multiplexed scan flip-flop is the most common choice. It is also the scan style most commonly supported in technology libraries for EDA software. If a design has a mixture of latches and flip-flops, the clocked scan and LSSD scan style are suitable. If a design predominately uses latches, the LSSD scan style is recommended. The basic operating procedure for a design with multiplexed flip-flops during testing by ATE (see Section 2.7) is as follows:

9 2 MANUFACTURING TESTING 2. A pattern is serially shifted into the scan chain, each bit at a clock edge and with scan enable signal SE activated. 2. Holding the clock and SE off (so that the circuit is in normal functional mode), PIs are applied early in the next clock cycle. The POs are measured late in the same clock cycle. 3. The clock is pulsed once to capture data in the scan chain. 4. The first bit is read out with the clock off. To be able to shift the scan cells, SE is activated again. 5. The rest of the scan chain is read out by shifting it using the clock. Figure illustrates the procedure. The encircled numbers refer to the above-mentioned steps. The square blocks at the top represent a scan pattern that is serially shifted through the scan chain; the high bars represent a (parallelly fed) test pattern on the PIs. While one pattern is shifted out (during steps 4 and 5), a new pattern can be simultaneously shifted in. That way, all shifting procedures overlap, except for the first and last one. Figure : Scan pattern procedure The procedure explained here assumes there is only one scan chain. The scan procedure used by ATE is actually very flexible. It can be specified in a STIL (Standard Test Interface Language, see also Section 2.8) file that is read by ATE. This allows for custom procedures or changes to standard ones. As a first step, before any test pattern is applied, the correct functioning of the scan chain(s) is tested by a shift test. While SE is activated, a toggle sequence... is applied to the input, producing all four transitions in each flip-flop. This is continued until the first eight bits are observed on the scan output. The amount of clock cycles CC needed for all (scan) test patterns is: CC = N T V (N F F + ) + N F F + 8 where N T V is the number of test vectors and N F F is the number of flip-flops in the scan chain. 2.7 Automatic test equipment and built-in self-test Traditionally, the manufacturing testing of VLSI devices is done by Automatic Test Equipment (ATE). Modern ATE is typically operated by a computer. To select ATE, one must consider the specifications of the VLSI device. Major factors are speed (clock rate), timing (strobe) accuracy and number of I/O pins. ATE is normally equipped with so-called scan boards, which contain serial memory to shift data into and out of scan chains. When multiple scan chains are present in a VLSI device, multiple scan boards are needed. (Although some scan boards now support multiple scan chains.) More expensive test machines are required to handle the increasing number of I/O pins, higher clock rates and the larger sets of test vectors that are needed for more complex VLSI devices. Test machines of several million dollars are already commonplace (for clock rates in the GHz range) and predictions say the testing problem will only get worse in the coming

10 2 MANUFACTURING TESTING 22 years. Currently, the cost associated with testing each transistor in a VLSI device is greater than the cost to manufacture that transistor [3]. Besides the purchasing costs, there are operational costs for ATE that can be a few dollar cents per test second. The amount of test vectors should therefore be as small as possible, while maintaining a high fault coverage. Built-In Self-Test (BIST) is considered to be one of the primary solutions to the growing testing problems. The basic idea is to design a circuit that can test itself and determine whether it is faulty or fault-free. This requires additional circuitry. The added functionality must be capable of generating test patterns as well as providing a mechanism to determine if the responses of the DUT (Device-Under-Test) correspond to that of a fault-free circuit. BIST will reduce or eliminate the need for test equipment. It can also more easily operate at the intended clock rate. The biggest disadvantages of BIST are that it adds to the design time, has an area overhead and imposes performance degradation. Figure : Generic BIST architecture Figure shows the components that BIST hardware typically contains: a test controller to operate the testing process, a Test Pattern Generator (TPG) and an Output Response Analyzer (ORA) to analyze (and compact) the circuit responses. There is a variety of ways to implement the components. The most common way to implement the TPG and ORA is using register (flip-flops). Register can be used to form a Linear Feedback Shift Register (LFSR) pattern generator or an LFSR-based response compactor, called a Multiple-Input Signature Register (MISR). This takes some additional circuitry between the flip-flops. An LFSR generates patterns algorithmically and is pseudo-random. The way the flip-flops are connected determine its characteristic polynomial and the same goes for the MISR. A MISR is based on signature analysis: compacting the responses in a signature which can be compared with the expected signature of a fault-free circuit. Instead of using separate chains of flip-flops, both the LFSR and MISR can be combined in a so-called Built-In Logic Block Observer (BILBO). A problem with LFSR pattern generators is that it does not necessarily generate all the test pattern one needs to get a high fault coverage. It might be needed to reinitialize the LFSR with a different seed (initial state) several times. Note that using ATE one can supply any desired sequence of test patterns. Because of their regular structure, memory arrays are highly suitable for hardware BIST. Algorithmic test patterns can be used to test them (see also Section 2.5.5). Memory BIST is available in many EDA systems or via OEMs (Original Equipment Manufacturers) and can be used as part of the overal BIST architecture or for embedded memories only. Normally, this is employed for memory arrays exceeding 28 Kb. 2.8 Boundary scan and wrapper cells The IEEE 49. standard entitled Standard Test Access Port and Boundary-Scan Architecture is a standard interface between VLSI devices and test equipment. It provides access to the input and output pads of a chip on a PCB (Printed Circuit Board). It is also known as Boundary Scan or JTAG (Joint Test

11 2 MANUFACTURING TESTING 23 Action Group) and is supported by many EDA tools and ATE vendors. All signals between the device s core logic and the input/output pins are intercepted by a serial scan path known as the Boundary Scan Register. During normal operation the boundary scan cells are invisible. However, in test mode the cells can be used to set and/or read values. A similar standard for cores (within a SoC) is the IEEE 5 standard [7]. The two most important components of the standard are the Core Test Language (CTL) and the scalable core test architecture. CTL is an extension of the IEEE 45 Standard Test Interface Language (STIL). Its purpose is to standardize core test knowledge transfer. It must be provided by the core provider. This is necessary because cores are typically IP (Intellectual Property) blocks and the implementation is unknown. The core test architecture, including wrapper cells, can be seen as an extension to the boundary scan architecture. functional inputs W B R core W B R functional outputs wrapper serial input WBY WIR wrapper serial output wrapper interface port Figure 2: Mandatory IEEE 5 wrapper components Figure 2 shows the mandatory wrapper components. The Wrapper Instruction Register (WIR) controls the mode of operation. The input and output ports of the core are equipped with a Wrapper Boundary Register (WBR). These act transparently during normal system functioning, but in (internal) test mode, the scan chain through the WBRs is used to set the inputs and observe the outputs of the core. A single chain can contain multiple wrappers for multiple cores. The Wrapper BYpass register (WBY) can be used to skip one of the wrappers in the chain (bypass mode). Typically, some so-called glue logic is present in between cores on an SoC. While the logic within the cores may be unknown to an SoC designer, the WBRs are standardized, so that they can be used to test the glue logic. They then function as controllable inputs and observable ouputs for the glue logic. The wrappers must be put in external test mode for the testing of glue logic. 2.9 Special testability cases The following sections explain certain design features that can pose testability problems Gated clocks In low-power designs gated clocks are sometimes used, as clocking generates much dynamic power dissipation. Memory elements connected to a gated clock might not be controllable from the PIs. Certains faults within the gating element can disable the gated version of the clock, so that there is no testing option. A working clock signal is a basic requirement for the testing of a scan design, as it is needed for the flip-flops in the scan

12 2 MANUFACTURING TESTING 24 chain(s) to function. If it is necessary to use clock gating, one should provide a way to disable or bypass the gating in test mode. This can be done with a controllability test point for the gated clock (see Section 2.6.) Latches Latches are replaced by scannable equivalents in the LSSD scan style (see Section 2.6.2). Many designs mainly use flip-flops. In that case, it is a far more logical choice to use multiplexed scan flip-flops. Because of its popularity, it is also the scan style most commonly supported in technology libraries (also an important consideration). When latches are not replaced by scannable elements (for example, when using multiplexed flip-flops as scan style), they must be transparent. A transparent latch is a latch in which the enable line (or gate or control) can be asserted so that data passes through it without activating any of the design s clocks. When latches are not transparent, one might need to use sequential ATPG to get a good fault coverage. This should be avoided if possible Tri-state buses Faults on a tri-state bus enable lines can cause one of two problems: bus contention, which means there is more than one active driver, or bus float, which means there is no active driver. Either of these conditions can cause unpredictable logic values on the bus, which allows the fault to go undetected Mixed phases in scan chains If clocking in a scan chain is both inverted and noninverted, a problem similar to excessive clock skew can occur. For example, if an upstream flip-flop is rising-edge-triggered and a downstream flip-flop is falling-edgetriggered, a positive clock pulse first clocks a value into the upstream flip-flop. Then, on the same pulse s falling edge, it clocks the same value into the downstream flip-flop. If one cannot avoid mixing phases, there can be only one point in the chain where the clock phase reverses [6].

Design Verification & Testing Design for Testability and Scan

Design Verification & Testing Design for Testability and Scan Overview esign for testability (FT) makes it possible to: Assure the detection of all faults in a circuit Reduce the cost and time associated with test development Reduce the execution time of performing

More information

Design Verification and Test of Digital VLSI Circuits NPTEL Video Course. Module-VII Lecture-I Introduction to Digital VLSI Testing

Design Verification and Test of Digital VLSI Circuits NPTEL Video Course. Module-VII Lecture-I Introduction to Digital VLSI Testing Design Verification and Test of Digital VLSI Circuits NPTEL Video Course Module-VII Lecture-I Introduction to Digital VLSI Testing VLSI Design, Verification and Test Flow Customer's Requirements Specifications

More information

Fault Modeling. Why model faults? Some real defects in VLSI and PCB Common fault models Stuck-at faults. Transistor faults Summary

Fault Modeling. Why model faults? Some real defects in VLSI and PCB Common fault models Stuck-at faults. Transistor faults Summary Fault Modeling Why model faults? Some real defects in VLSI and PCB Common fault models Stuck-at faults Single stuck-at faults Fault equivalence Fault dominance and checkpoint theorem Classes of stuck-at

More information

Testing of Digital System-on- Chip (SoC)

Testing of Digital System-on- Chip (SoC) Testing of Digital System-on- Chip (SoC) 1 Outline of the Talk Introduction to system-on-chip (SoC) design Approaches to SoC design SoC test requirements and challenges Core test wrapper P1500 core test

More information

Introduction to VLSI Testing

Introduction to VLSI Testing Introduction to VLSI Testing 李 昆 忠 Kuen-Jong Lee Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan, R.O.C. Introduction to VLSI Testing.1 Problems to Think A 32 bit adder A

More information

Testing Low Power Designs with Power-Aware Test Manage Manufacturing Test Power Issues with DFTMAX and TetraMAX

Testing Low Power Designs with Power-Aware Test Manage Manufacturing Test Power Issues with DFTMAX and TetraMAX White Paper Testing Low Power Designs with Power-Aware Test Manage Manufacturing Test Power Issues with DFTMAX and TetraMAX April 2010 Cy Hay Product Manager, Synopsys Introduction The most important trend

More information

What is a System on a Chip?

What is a System on a Chip? What is a System on a Chip? Integration of a complete system, that until recently consisted of multiple ICs, onto a single IC. CPU PCI DSP SRAM ROM MPEG SoC DRAM System Chips Why? Characteristics: Complex

More information

Implementation Details

Implementation Details LEON3-FT Processor System Scan-I/F FT FT Add-on Add-on 2 2 kbyte kbyte I- I- Cache Cache Scan Scan Test Test UART UART 0 0 UART UART 1 1 Serial 0 Serial 1 EJTAG LEON_3FT LEON_3FT Core Core 8 Reg. Windows

More information

VLSI Design Verification and Testing

VLSI Design Verification and Testing VLSI Design Verification and Testing Instructor Chintan Patel (Contact using email: cpatel2@cs.umbc.edu). Text Michael L. Bushnell and Vishwani D. Agrawal, Essentials of Electronic Testing, for Digital,

More information

Sequential Logic Design Principles.Latches and Flip-Flops

Sequential Logic Design Principles.Latches and Flip-Flops Sequential Logic Design Principles.Latches and Flip-Flops Doru Todinca Department of Computers Politehnica University of Timisoara Outline Introduction Bistable Elements Latches and Flip-Flops S-R Latch

More information

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

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

More information

Memory Elements. Combinational logic cannot remember

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

More information

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

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

More information

ESP-CV Custom Design Formal Equivalence Checking Based on Symbolic Simulation

ESP-CV Custom Design Formal Equivalence Checking Based on Symbolic Simulation Datasheet -CV Custom Design Formal Equivalence Checking Based on Symbolic Simulation Overview -CV is an equivalence checker for full custom designs. It enables efficient comparison of a reference design

More information

7. Latches and Flip-Flops

7. Latches and Flip-Flops Chapter 7 Latches and Flip-Flops Page 1 of 18 7. Latches and Flip-Flops Latches and flip-flops are the basic elements for storing information. One latch or flip-flop can store one bit of information. The

More information

The Boundary Scan Test (BST) technology

The Boundary Scan Test (BST) technology The Boundary Scan Test () technology J. M. Martins Ferreira FEUP / DEEC - Rua Dr. Roberto Frias 42-537 Porto - PORTUGAL Tel. 35 225 8 748 / Fax: 35 225 8 443 (jmf@fe.up.pt / http://www.fe.up.pt/~jmf) Objectives

More information

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

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

More information

Lecture 7: Clocking of VLSI Systems

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

More information

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

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

More information

TABLE OF CONTENTS. xiii List of Tables. xviii List of Design-for-Test Rules. xix Preface to the First Edition. xxi Preface to the Second Edition

TABLE OF CONTENTS. xiii List of Tables. xviii List of Design-for-Test Rules. xix Preface to the First Edition. xxi Preface to the Second Edition TABLE OF CONTENTS List of Figures xiii List of Tables xviii List of Design-for-Test Rules xix Preface to the First Edition xxi Preface to the Second Edition xxiii Acknowledgement xxv 1 Boundary-Scan Basics

More information

Topics of Chapter 5 Sequential Machines. Memory elements. Memory element terminology. Clock terminology

Topics of Chapter 5 Sequential Machines. Memory elements. Memory element terminology. Clock terminology Topics of Chapter 5 Sequential Machines Memory elements Memory elements. Basics of sequential machines. Clocking issues. Two-phase clocking. Testing of combinational (Chapter 4) and sequential (Chapter

More information

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

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

More information

A New Paradigm for Synchronous State Machine Design in Verilog

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

More information

Memory Testing. Memory testing.1

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

More information

The components. E3: Digital electronics. Goals:

The components. E3: Digital electronics. Goals: E3: Digital electronics Goals: Basic understanding of logic circuits. Become familiar with the most common digital components and their use. Equipment: 1 st. LED bridge 1 st. 7-segment display. 2 st. IC

More information

Theory of Logic Circuits. Laboratory manual. Exercise 3

Theory of Logic Circuits. Laboratory manual. Exercise 3 Zakład Mikroinformatyki i Teorii Automatów yfrowych Theory of Logic ircuits Laboratory manual Exercise 3 Bistable devices 2008 Krzysztof yran, Piotr zekalski (edt.) 1. lassification of bistable devices

More information

Non-Contact Test Access for Surface Mount Technology IEEE 1149.1-1990

Non-Contact Test Access for Surface Mount Technology IEEE 1149.1-1990 Non-Contact Test Access for Surface Mount Technology IEEE 1149.1-1990 ABSTRACT Mechanical and chemical process challenges initially limited acceptance of surface mount technology (SMT). As those challenges

More information

Lecture 5: Gate Logic Logic Optimization

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

More information

Chapter 2 Logic Gates and Introduction to Computer Architecture

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

More information

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

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

More information

Latches, the D Flip-Flop & Counter Design. ECE 152A Winter 2012

Latches, the D Flip-Flop & Counter Design. ECE 152A Winter 2012 Latches, the D Flip-Flop & Counter Design ECE 52A Winter 22 Reading Assignment Brown and Vranesic 7 Flip-Flops, Registers, Counters and a Simple Processor 7. Basic Latch 7.2 Gated SR Latch 7.2. Gated SR

More information

CHAPTER 3 Boolean Algebra and Digital Logic

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

More information

An Effective Deterministic BIST Scheme for Shifter/Accumulator Pairs in Datapaths

An Effective Deterministic BIST Scheme for Shifter/Accumulator Pairs in Datapaths An Effective Deterministic BIST Scheme for Shifter/Accumulator Pairs in Datapaths N. KRANITIS M. PSARAKIS D. GIZOPOULOS 2 A. PASCHALIS 3 Y. ZORIAN 4 Institute of Informatics & Telecommunications, NCSR

More information

JTAG Applications. Product Life-Cycle Support. Software Debug. Integration & Test. Figure 1. Product Life Cycle Support

JTAG Applications. Product Life-Cycle Support. Software Debug. Integration & Test. Figure 1. Product Life Cycle Support JTAG Applications While it is obvious that JTAG based testing can be used in the production phase of a product, new developments and applications of the IEEE-1149.1 standard have enabled the use of JTAG

More information

NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter

NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter Description: The NTE2053 is a CMOS 8 bit successive approximation Analog to Digital converter in a 20 Lead DIP type package which uses a differential

More information

EE 42/100 Lecture 24: Latches and Flip Flops. Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad

EE 42/100 Lecture 24: Latches and Flip Flops. Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad A. M. Niknejad University of California, Berkeley EE 100 / 42 Lecture 24 p. 1/20 EE 42/100 Lecture 24: Latches and Flip Flops ELECTRONICS Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad University of California,

More information

Encounter DFT Architect

Encounter DFT Architect Full-chip, synthesis-based, power-aware test architecture development Cadence Encounter DFT Architect addresses and optimizes multiple design and manufacturing objectives such as timing, area, wiring,

More information

CS311 Lecture: Sequential Circuits

CS311 Lecture: Sequential Circuits CS311 Lecture: Sequential Circuits Last revised 8/15/2007 Objectives: 1. To introduce asynchronous and synchronous flip-flops (latches and pulsetriggered, plus asynchronous preset/clear) 2. To introduce

More information

Objective. Testing Principle. Types of Testing. Characterization Test. Verification Testing. VLSI Design Verification and Testing.

Objective. Testing Principle. Types of Testing. Characterization Test. Verification Testing. VLSI Design Verification and Testing. VLSI Design Verification and Testing Objective VLSI Testing Mohammad Tehranipoor Electrical and Computer Engineering University of Connecticut Need to understand Types of tests performed at different stages

More information

Module 3: Floyd, Digital Fundamental

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

More information

Combinational Controllability Controllability Formulas (Cont.)

Combinational Controllability Controllability Formulas (Cont.) Outline Digital Testing: Testability Measures The case for DFT Testability Measures Controllability and observability SCOA measures Combinational circuits Sequential circuits Adhoc techniques Easily testable

More information

Module-I Lecture-I Introduction to Digital VLSI Design Flow

Module-I Lecture-I Introduction to Digital VLSI Design Flow Design Verification and Test of Digital VLSI Circuits NPTEL Video Course Module-I Lecture-I Introduction to Digital VLSI Design Flow Introduction The functionality of electronics equipments and gadgets

More information

Counters and Decoders

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

More information

CHAPTER 11: Flip Flops

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

More information

Sequential Logic: Clocks, Registers, etc.

Sequential Logic: Clocks, Registers, etc. ENEE 245: igital Circuits & Systems Lab Lab 2 : Clocks, Registers, etc. ENEE 245: igital Circuits and Systems Laboratory Lab 2 Objectives The objectives of this laboratory are the following: To design

More information

Latch Timing Parameters. Flip-flop Timing Parameters. Typical Clock System. Clocking Overhead

Latch Timing Parameters. Flip-flop Timing Parameters. Typical Clock System. Clocking Overhead Clock - key to synchronous systems Topic 7 Clocking Strategies in VLSI Systems Peter Cheung Department of Electrical & Electronic Engineering Imperial College London Clocks help the design of FSM where

More information

Modeling Latches and Flip-flops

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

More information

Introduction to Digital System Design

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

More information

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

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

More information

Chapter 13: Verification

Chapter 13: Verification Chapter 13: Verification Prof. Ming-Bo Lin Department of Electronic Engineering National Taiwan University of Science and Technology Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010,

More information

9/14/2011 14.9.2011 8:38

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

More information

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001 Agenda Introduzione Il mercato Dal circuito integrato al System on a Chip (SoC) La progettazione di un SoC La tecnologia Una fabbrica di circuiti integrati 28 How to handle complexity G The engineering

More information

Sequential 4-bit Adder Design Report

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

More information

Clocking. Figure by MIT OCW. 6.884 - Spring 2005 2/18/05 L06 Clocks 1

Clocking. Figure by MIT OCW. 6.884 - Spring 2005 2/18/05 L06 Clocks 1 ing Figure by MIT OCW. 6.884 - Spring 2005 2/18/05 L06 s 1 Why s and Storage Elements? Inputs Combinational Logic Outputs Want to reuse combinational logic from cycle to cycle 6.884 - Spring 2005 2/18/05

More information

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

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

More information

Digital Circuit Design

Digital Circuit Design Test and Diagnosis of of ICs Fault coverage (%) 95 9 85 8 75 7 65 97.92 SSL 4,246 Shawn Blanton Professor Department of ECE Center for Silicon System Implementation CMU Laboratory for Integrated Systems

More information

At-Speed Test Considering Deep Submicron Effects. D. M. H. Walker Dept. of Computer Science Texas A&M University walker@cs.tamu.

At-Speed Test Considering Deep Submicron Effects. D. M. H. Walker Dept. of Computer Science Texas A&M University walker@cs.tamu. At-Speed Test Considering Deep Submicron Effects D. M. H. Walker Dept. of Computer Science Teas A&M University walker@cs.tamu.edu Integrated Circuit Testing IC Test What s Going On Test Generation Test

More information

Digital Design Verification

Digital Design Verification Digital Design Verification Course Instructor: Debdeep Mukhopadhyay Dept of Computer Sc. and Engg. Indian Institute of Technology Madras, Even Semester Course No: CS 676 1 Verification??? What is meant

More information

Yaffs NAND Flash Failure Mitigation

Yaffs NAND Flash Failure Mitigation Yaffs NAND Flash Failure Mitigation Charles Manning 2012-03-07 NAND flash is one of very few types of electronic device which are knowingly shipped with errors and are expected to generate further errors

More information

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE INTRODUCTION TO DIGITAL SYSTEMS 1 DESCRIPTION AND DESIGN OF DIGITAL SYSTEMS FORMAL BASIS: SWITCHING ALGEBRA IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE COURSE EMPHASIS:

More information

Manchester Encoder-Decoder for Xilinx CPLDs

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

More information

Security in the Age of Nanocomputing. Hacking Devices

Security in the Age of Nanocomputing. Hacking Devices Security in the Age of Nanocomputing Matthew Tan Creti Hacking Devices The ESA estimates its total worldwide losses due to piracy at $3 billion annually [2] One million unlocked iphones could cost Apple

More information

NAME AND SURNAME. TIME: 1 hour 30 minutes 1/6

NAME AND SURNAME. TIME: 1 hour 30 minutes 1/6 E.T.S.E.T.B. MSc in ICT FINAL EXAM VLSI Digital Design Spring Course 2005-2006 June 6, 2006 Score publication date: June 19, 2006 Exam review request deadline: June 22, 2006 Academic consultancy: June

More information

Lecture 11: Sequential Circuit Design

Lecture 11: Sequential Circuit Design Lecture 11: Sequential Circuit esign Outline Sequencing Sequencing Element esign Max and Min-elay Clock Skew Time Borrowing Two-Phase Clocking 2 Sequencing Combinational logic output depends on current

More information

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

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

More information

VHDL Test Bench Tutorial

VHDL Test Bench Tutorial University of Pennsylvania Department of Electrical and Systems Engineering ESE171 - Digital Design Laboratory VHDL Test Bench Tutorial Purpose The goal of this tutorial is to demonstrate how to automate

More information

Chung-Ho Chen Department of Electrical Engineering, National Cheng Kung University, Tainan, Taiwan

Chung-Ho Chen Department of Electrical Engineering, National Cheng Kung University, Tainan, Taiwan A Hybrid Software-Based Self-Testing methodology for Embedded Processor Tai-Hua Lu Department of Electrical Engineering, National Cheng Kung University, Tainan, Taiwan aaron@casmail.ee.ncku.edu.tw Chung-Ho

More information

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

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

More information

COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design

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

More information

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

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

More information

Designing a System-on-Chip (SoC) with an ARM Cortex -M Processor

Designing a System-on-Chip (SoC) with an ARM Cortex -M Processor Designing a System-on-Chip (SoC) with an ARM Cortex -M Processor A Starter Guide Joseph Yiu November 2014 version 1.02 27 Nov 2014 1 - Background Since the ARM Cortex -M0 Processor was released a few years

More information

Contents COUNTER. Unit III- Counters

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

More information

Engr354: Digital Logic Circuits

Engr354: Digital Logic Circuits Engr354: igital Circuits Chapter 7 Sequential Elements r. Curtis Nelson Sequential Elements In this chapter you will learn about: circuits that can store information; Basic cells, latches, and flip-flops;

More information

L4: Sequential Building Blocks (Flip-flops, Latches and Registers)

L4: Sequential Building Blocks (Flip-flops, Latches and Registers) L4: Sequential Building Blocks (Flip-flops, Latches and Registers) Acknowledgements: Materials in this lecture are courtesy of the following sources and are used with permission. Prof. Randy Katz (Unified

More information

Sequential Circuit Design

Sequential Circuit Design Sequential Circuit Design Lan-Da Van ( 倫 ), Ph. D. Department of Computer Science National Chiao Tung University Taiwan, R.O.C. Fall, 2009 ldvan@cs.nctu.edu.tw http://www.cs.nctu.edu.tw/~ldvan/ Outlines

More information

CSE140: Components and Design Techniques for Digital Systems

CSE140: Components and Design Techniques for Digital Systems CE4: Components and esign Techniques for igital ystems Tajana imunic osing ources: Where we are now What we ve covered so far (Chap -5, App. A& B) Number representations Boolean algebra OP and PO Logic

More information

Digital Electronics Detailed Outline

Digital Electronics Detailed Outline Digital Electronics Detailed Outline Unit 1: Fundamentals of Analog and Digital Electronics (32 Total Days) Lesson 1.1: Foundations and the Board Game Counter (9 days) 1. Safety is an important concept

More information

Arbitrary Density Pattern (ADP) Based Reduction of Testing Time in Scan-BIST VLSI Circuits

Arbitrary Density Pattern (ADP) Based Reduction of Testing Time in Scan-BIST VLSI Circuits Arbitrary Density Pattern (ADP) Based Reduction of Testing Time in Scan-BIST VLSI Circuits G. Naveen Balaji S. Vinoth Vijay Abstract Test power reduction done by Arbitrary Density Patterns (ADP) in which

More information

Lecture 10: Sequential Circuits

Lecture 10: Sequential Circuits Introduction to CMOS VLSI esign Lecture 10: Sequential Circuits avid Harris Harvey Mudd College Spring 2004 Outline q Sequencing q Sequencing Element esign q Max and Min-elay q Clock Skew q Time Borrowing

More information

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

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

More information

Automotive Electronics Council Component Technical Committee

Automotive Electronics Council Component Technical Committee ATTACHMENT 7 FAULT SIMULATION AND FAULT GRADING Acknowledgment Any document involving a complex technology brings together experience and skills from many sources. The Automotive Electronics Council would

More information

PowerPC Microprocessor Clock Modes

PowerPC Microprocessor Clock Modes nc. Freescale Semiconductor AN1269 (Freescale Order Number) 1/96 Application Note PowerPC Microprocessor Clock Modes The PowerPC microprocessors offer customers numerous clocking options. An internal phase-lock

More information

Design and Verification of Nine port Network Router

Design and Verification of Nine port Network Router Design and Verification of Nine port Network Router G. Sri Lakshmi 1, A Ganga Mani 2 1 Assistant Professor, Department of Electronics and Communication Engineering, Pragathi Engineering College, Andhra

More information

THE ADVANTAGES OF COMBINING LOW PIN COUNT TEST WITH SCAN COMPRESSION OF VLSI TESTING

THE ADVANTAGES OF COMBINING LOW PIN COUNT TEST WITH SCAN COMPRESSION OF VLSI TESTING Zbornik radova 56. Konferencije za ETRAN, Zlatibor, 11-14. juna 2012. Proc. 56th ETRAN Conference, Zlatibor, June 11-14, 2012 THE ADVANTAGES OF COMBINING LOW PIN COUNT TEST WITH SCAN COMPRESSION OF VLSI

More information

Switch Fabric Implementation Using Shared Memory

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

More information

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

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

More information

C8051F020 Utilization in an Embedded Digital Design Project Course. Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia

C8051F020 Utilization in an Embedded Digital Design Project Course. Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia C8051F020 Utilization in an Embedded Digital Design Project Course Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia Abstract In this paper, the utilization of the C8051F020 in an

More information

Lecture 8: Synchronous Digital Systems

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

More information

Programmable Logic IP Cores in SoC Design: Opportunities and Challenges

Programmable Logic IP Cores in SoC Design: Opportunities and Challenges Programmable Logic IP Cores in SoC Design: Opportunities and Challenges Steven J.E. Wilton and Resve Saleh Department of Electrical and Computer Engineering University of British Columbia Vancouver, B.C.,

More information

Switched Interconnect for System-on-a-Chip Designs

Switched Interconnect for System-on-a-Chip Designs witched Interconnect for ystem-on-a-chip Designs Abstract Daniel iklund and Dake Liu Dept. of Physics and Measurement Technology Linköping University -581 83 Linköping {danwi,dake}@ifm.liu.se ith the increased

More information

Switching and Finite Automata Theory

Switching and Finite Automata Theory Switching and Finite Automata Theory Understand the structure, behavior, and limitations of logic machines with this thoroughly updated third edition. New topics include: CMOS gates logic synthesis logic

More information

ASYNCHRONOUS COUNTERS

ASYNCHRONOUS COUNTERS LB no.. SYNCHONOUS COUNTES. Introduction Counters are sequential logic circuits that counts the pulses applied at their clock input. They usually have 4 bits, delivering at the outputs the corresponding

More information

Low Power AMD Athlon 64 and AMD Opteron Processors

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

More information

CHAPTER 11 LATCHES AND FLIP-FLOPS

CHAPTER 11 LATCHES AND FLIP-FLOPS CHAPTER 11 LATCHES AND FLIP-FLOPS This chapter in the book includes: Objectives Study Guide 11.1 Introduction 11.2 Set-Reset Latch 11.3 Gated D Latch 11.4 Edge-Triggered D Flip-Flop 11.5 S-R Flip-Flop

More information

Chapter 2 Ensuring RTL Intent

Chapter 2 Ensuring RTL Intent Chapter 2 Ensuring RTL Intent A user starts the design of his block, by describing the functionality of the block in the form of RTL. The RTL code is then synthesized to realize the gate level connectivity

More information

Lecture 10 Sequential Circuit Design Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010

Lecture 10 Sequential Circuit Design Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010 EE4800 CMOS igital IC esign & Analysis Lecture 10 Sequential Circuit esign Zhuo Feng 10.1 Z. Feng MTU EE4800 CMOS igital IC esign & Analysis 2010 Sequencing Outline Sequencing Element esign Max and Min-elay

More information

TRUE SINGLE PHASE CLOCKING BASED FLIP-FLOP DESIGN

TRUE SINGLE PHASE CLOCKING BASED FLIP-FLOP DESIGN TRUE SINGLE PHASE CLOCKING BASED FLIP-FLOP DESIGN USING DIFFERENT FOUNDRIES Priyanka Sharma 1 and Rajesh Mehra 2 1 ME student, Department of E.C.E, NITTTR, Chandigarh, India 2 Associate Professor, Department

More information

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

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

More information

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

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

More information

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

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

More information