FPGA Development Techniques. Wednesday November 3, 2004 Polytech Orléans
|
|
- Joella Gray
- 6 years ago
- Views:
Transcription
1 FPGA Development Techniques Wednesday November 3, 2004 Polytech Orléans
2 Agenda Static Timing Analysis Constraining an FPGA design and ensuring it meets performance requirements On-Chip Debugging Using a logic analyzer implemented inside the FPGA to quickly debug at full system speed Power Estimation & Analysis Obtaining an initial power estimate before starting your design & analyzing detailed results after implementation FPGA Development Techniques 2
3 Outline Static Timing Analysis Introduction Review of Basic Constraints When to Use Advanced Constraints Handling Multiple Clock Domains Analyzing Design Results Demonstration of Constraints Editor & Timing Analyzer to Floorplanner Cross-Probing On-Chip Debugging Power Estimation & Analysis FPGA Development Techniques 3
4 What are Timing Constraints for? The implementation tools do not try to find the placement & routing that will obtain the fastest speed Instead, the implementation tools try to meet your performance expectations Performance expectations are communicated with timing constraints Timing constraints cause the tools to improve the design performance by placing logic closer together so shorter routing resources can be used FPGA Development Techniques 4
5 Without Timing Constraints This design had no timing constraints or pin assignments entered with the design when it was implemented Note the logical structure of the placement and pins Xilinx recommends that you verify that your timing constraints are realistic before completing the functional verification of your design This design has a maximum system clock frequency of 50 MHz FPGA Development Techniques 5
6 With Timing Constraints This is the same design with three global timing constraints entered with the Constraints Editor It has a maximum system clock frequency of 60 MHz Note how most of the logic is placed closer to the edge of the device, where the pins have been placed FPGA Development Techniques 6
7 How do I add Constraints? Start the Constraints Editor GUI from the Process window will create a new Implementation Constrains source file and run the TRANSLATE step Can also be invoked at the command line by typing constraints_editor Or edit the constraints file a text file which contains constraints identified by a.ucf suffix FPGA Development Techniques 7
8 Constraints in the Design Flow Text Editor Text Editor EDIF or or NGC Synthesis VHDL 1. Enter Timing Constraints here and Physical Constraints here (not covered today) 3. Used by the implementation tools 4. Analyze results here FPGA Development Techniques 8
9 Specifying Constraints Usually written (automatically or by hand) in a separate file, one per project Documented in the Constraints Guide see doc\usenglish\books\docs\cgd\cgd.pdf or Constraints can also be directly embedded in source code or IP core netlists FPGA Development Techniques 9
10 Outline Static Timing Analysis Introduction Review of Basic Constraints When to Use Advanced Constraints Handling Multiple Clock Domains Analyzing Design Results Demonstration of Constraints Editor & Timing Analyzer to Floorplanner Cross-Probing On-Chip Debugging Power Estimation & Analysis FPGA Development Techniques 10
11 The PERIOD Constraint NET CLK PERIOD = 10 ns ; FPGA CLK This says, Data has 10nS to get from this flip-flop, to another flip-flop, here All synchronous elements (RAMs, FFs, MULTS) are identified by forward propagation of the CLK net. Note that I/O Pads are not covered by the PERIOD constraint! FPGA Development Techniques 11
12 The OFFSET IN - BEFORE Constraint OFFSET = IN 3nS BEFORE CLK ; UPSTREAM DEVICE FPGA Din CLK CLK This says, Data will be valid here, 3 ns BEFORE the clock arrives here The tools attempt to control internal data and clock delays for all flip-flops setup requirement (TsuFF). FPGA Development Techniques 12
13 The OFFSET OUT - AFTER Constraint OFFSET = OUT 4nS AFTER CLK ; FPGA CLK DOWNSTREAM DEVICE This says, Data will be valid here, 4 ns AFTER the clock arrives here The tools attempt to control internal data and clock delays to meet this clock-toout requirement. The downstream device s setup time and the board delay will help you set this value. Using a DLL or DCM can help improve this number! FPGA Development Techniques 13
14 The PADS to PADS Constraint TIMESPEC "TS_P2P" = FROM PADS TO PADS 15 ns; UPSTREAM DEVICE FPGA DOWNSTREAM DEVICE This says, from the input pad, Data has 15 ns to get to the output pad This constraint is required to constrain combinatorial logic paths (ie, don t contain any synchronous elements) within the FPGA. Purely combinatorial paths, while easily implemented with consistent timing in CPLDs, should be used with caution in FPGAs. FPGA Development Techniques 14
15 Outline Static Timing Analysis Introduction Review of Basic Constraints When to Use Advanced Constraints Handling Multiple Clock Domains Analyzing Design Results Demonstration of Constraints Editor & Timing Analyzer to Floorplanner Cross-Probing On-Chip Debugging Power Estimation & Analysis FPGA Development Techniques 15
16 Using Advanced Constraints Review of Basic Constraints showed how to fully constraint a simple, synchronous, single clock design Most real designs are more complicated than this! Many designs may require some of the following: Specifying different setup and clk-to-out values for different I/O pins on the same clock domain (ie microprocessor I/F) Defining multi-cycle paths (useful for clock enables) Ignoring some paths which aren t timing critical Clocks on non-global routing Forwarding clocks off-chip FPGA Development Techniques 16
17 OFFSET IN & OUT Revisited For certain interfaces, I/O pins in the same clock domain may have different setup & hold requirements Continue to use general OFFSET IN & OUT for entire clock domain, but add exceptions: OFFSET = IN 3 ns BEFORE CLK ; NET FAST_IN OFFSET = IN 1.8 ns BEFORE CLK ; NET SLOW_IN OFFSET = IN 4.2 ns BEFORE CLK ; Specific exceptions will take precedence over general constraint, without duplication in the timing report Wildcards, for example ADDR_BUS[*] can be used... FPGA Development Techniques 17
18 Creating Timing Groups To allow for more complex timing constraints, the notion of groups of elements is required Since logic paths start and stop at synchronous elements, the following keywords can be used: FFS LATCHES RAMS All flip-flops All latches All RAM elements Input & outputs can also be grouped: PADS All I/O pads Can be used globally and/or to create sub-groups FPGA Development Techniques 18
19 Slow Exceptions Slow Exceptions are FROM:TOs that define a different delay for portion of the design. The majority of the design is covered by a PERIOD constraint. Example 1: Using FROM:TO s only -- OK, but not best method 30 ns 60 ns IN CLK D Q D Q D Q FROM:flop1:TO:flop2:30 FROM:flop2:TO:flop3:60 OUT Example 2: Using PERIOD with a FROM:TO Slow Exception -- BEST, faster par & trce 30 ns 60 ns IN CLK D Q D Q D Q NET CLK PERIOD=30 FROM:flop2:TO:flop3:60 OUT FPGA Development Techniques 19
20 Multi-Cycle Delays Use INST to create groups by matching the symbol name NET CLK PERIOD = 10 ; INST CNT16/U1 TNM = CNT50 ; INST reg0 TNM = MYREGS ; TIMESPEC TS_MYBUS = FROM : CNT50 : TO : MYREGS : 20 ns ; TS_MYBUS D D Q reg0 Q reg1 MY_REG_0 MY_REG_1 CNT16 D Q reg2 D Q reg3 MY_REG_2 MY_REG_3 FPGA Development Techniques 20
21 FROM : TO Syntax Details TIMESPEC TS_name = FROM:group1:TO:group2:value; TIMESPEC defines the type of specification TS_name must always start with TS. Any alphanumeric character or underscore may follow Group1 designates the origin of the path Group2 designates the destination of the path Value is in ns by default. Other possible values are MHz or another time spec like TS_C2S/2 or TS_C2S*2 FPGA Development Techniques 21
22 Ignoring Selected Paths Why use Timing IGnore (TIG)? Not all paths in designs require timing specifications Decreases competition for routing resources When non-critical timing paths are included in time specifications, more important paths may be slower and may not meet time specifications The TIG constraint ignores all nets that fan forward from the specified element The TIG constraint prevents any constraints from being applied to the specified path FPGA Development Techniques 22
23 TIG Example UCF Syntax: NET NETC TIG ; NETA NETB NETC NETD NETC shown in the diagram is ignored. This will remove all constraints on 3 different paths NETA, NETB and NETD which overlap some parts of NETC s path will not be ignored FPGA Development Techniques 23
24 Syntax: TIG Attribute {NET PIN INST} name TIG = group1 [ group2, ]; name : element, net, or instance that is to be ignored group_name : optional field which ignores the net, instance, or pin in the listed group All paths that fan forward from the net or instance will not have any timing constraints applied to them The paths will be treated as if they don t exist Paths can be specified between & through groups, ie: TIMESPEC ts_ignr = FROM groupa THRU groupb TO groupc TIG ; FPGA Development Techniques 24
25 Clocks on non-global Routing Clocks which don t use BUFGs can be skewed INPUT 3.1 DQ_A 3.1 D Q_B 3.3 D Q_C CLOCK A B C This shift register will not work because of clock skew! 2 cycles Clock 3 cycles A & C Clock B Clock Q_A Q_B Expected operation Q_A Q_B Clock skewed version Q_C Q_C FPGA Development Techniques 25
26 Minimizing Clock Skew Global Clock networks, using GCK pin and BUFG, distribute clocks with minimal skew In the case of clocks on non-global routing, two constraints can help minimize skew: NET net_name USELOWSKEWLINES ; NET net_name MAXSKEW = 1 ns ; USELOWSKEWLINES will instruct the tools to use backbone local clock routing resources MAXSKEW will try to balance the clock delay FPGA Development Techniques 26
27 Forwarding Clocks off-chip When sending a clock off-chip, general purpose routing will be used, even if the clock is on BUFG To properly constrain this path, use the following: NET net_name MAXDELAY = 3 ns ; MAXDELAY can be used for any timing critical nets, not just clocks The Virtex-II/-II Pro/-4 & Spartan-3 IOB with its integrated DDR register provides a very effective way to send clock(s) off-chip with very little skew FPGA Development Techniques 27
28 Timing Constraint Priority Within a particular source: Highest Priority Lowest Priority FPGA Development Techniques 28
29 Tool Runtime Reduction Tips Limit number of time constraints Add PERIOD and OFFSET constraints through Xilinx Constraints Editor, instead of doing Advanced Analysis Consolidate similar timespecs to limit the number of time constraints Especially slow exceptions (TIG) Individual OFFSETs for every net with the same requirement Be aware of duplicate constraints created by synthesis tools (.ncf files) Remove FROM:TO constraints between related clocks Use Global constraints, then grouped or net constraints Limit analysis of unconstrained paths Group related I/O pads together and place early on Use higher placement effort, lower router effort FPGA Development Techniques 29
30 Outline Static Timing Analysis Introduction Review of Basic Constraints When to Use Advanced Constraints Handling Multiple Clock Domains Analyzing Design Results Demonstration of Constraints Editor & Timing Analyzer to Floorplanner Cross-Probing On-Chip Debugging Power Estimation & Analysis FPGA Development Techniques 30
31 Constraining Between Multiple Clock Domains By default, different clock domains are assumed to be unrelated (ie, no constraint applied between domains) Define clock groups: NET CLK_A TNM = A_GRP; NET CLK_B TNM = B_GRP; Define timing constraints: TIMESPEC TS_CLKA = PERIOD A_GRP 20; TIMESPEC TS_CLKB = PERIOD B_GRP TS_CLKA*2; TIMESPEC TS_CLKA2B = FROM: A_GRP: TO: B_GRP: 20; D Q D Q D Q CLK_A D Q OUT1 CLK_B FPGA Development Techniques 31
32 Constraining Between Multiple Clock Domains When generating clocks using a DLL or DCM, the phase & frequency relation will be determined automatically and handle the clock domain crossing To constrain clocks which have a phase relation but which enter using separate pins, use the following constraints: TIMESPEC TS01 = PERIOD clk0 10 ns; TIMESPEC TS02 = PERIOD clk180 TS01 PHASE + 5 ns; FPGA Development Techniques 32
33 Outline Static Timing Analysis Introduction Review of Basic Constraints When to Use Advanced Constraints Handling Multiple Clock Domains Analyzing Design Results Demonstration of Constraints Editor & Timing Analyzer to Floorplanner Cross-Probing On-Chip Debugging Power Estimation & Analysis FPGA Development Techniques 33
34 Analyzing Design Results Place & Route Report lists all constraints and the obtained results: Timing Score: WARNING:Par:62 - Timing constraints have not been met. Asterisk (*) preceding a constraint indicates it was not met Constraint Requested Actual Logic Levels * TS_clk = PERIOD TIMEGRP "clk" ns 6.450ns ns 7 HIGH % constraint not met. All signals are completely routed. Total REAL time to par completion: 2 mins 44 secs Total CPU time to par completion: 2 mins 39 secs Placement: Completed - No errors found. Routing: Completed - No errors found. Timing: Completed - 52 errors found. For more detail on why a constraint wasn t met, view the static timing analysis reports
35 Generating Timing Reports Post-Map Static Timing Report can be created after Map process May be useful for checking logic only delays early in the design process Post-Place & Route Static Timing Report created after Place & Route process Best way to get timing information on fully implemented design
36 Post-Map Versus Post-Place & Route Static Timing Reports The Post-Map Static Timing Report indicates whether or not your constraints are reasonable Contains actual block delays and minimum net delays What is reasonable? If less than 50 percent of the timing budget is used for logic delays, the Place & Route tools should be able to meet the constraint easily Between percent, software runtime will increase Greater than 80 percent, the tools may have trouble meeting your goals The Post-Place & Route Static Timing Report indicates whether or not your constraints were actually met Contains actual block delays and actual net delays calculated from Place & Route FPGA Development Techniques 36
37 Viewing Timing Reports Timing Reports are best viewed using the Timing Analyzer Provides index into report greatly facilitating navigation The Timing Analyzer can create custom reports for selected paths Note: Timing Reports can be created for designs without constraints Advanced Analysis option (trce -a) Useful for finding paths that may have not been constrained and obtaining their timing
38 Timing Report Example Clock edge and time added to clock name Link to Timing Improvement Wizard (failing paths only) Cross probing to Floorplanner and synthesis RTL and Technology views FPGA Development Techniques 38
39 Timing Reports Contents Command line options for the trce program Timing Constraints section Summary of each timing constraint Details on paths that fail to meet constraints Data Sheet section Setup/hold, clock to pad, timing between clock domains, and pad-to-pad delay information Organized in easy-to-read table format Timing Summary section Number of errors and Timing Score Constraint coverage
40 Post-Place & Route Static Timing Report Properties Report Type Error (failing) or Verbose (all) Number of Items in Error/Verbose Timing Report Analyze Skew for All Clocks Only necessary for clocks routed on general routing as others are skew checked automatically Stamp Timing Model Filename Timing Specification Interaction Report file FPGA Development Techniques 40
41 ProActive Timing Closure Cross-Probing to the Xilinx Floorplanner Link Link from from the the Xilinx Xilinx timing timing report report to to the the Floorplanner A graphical graphical view view provides provides powerful powerful insights insights for for timing timing debug debug strategies FPGA Development Techniques 41
42 Outline Static Timing Analysis Introduction Review of Basic Constraints When to Use Advanced Constraints Handling Multiple Clock Domains Analyzing Design Results Demonstration of Constraints Editor & Timing Analyzer to Floorplanner Cross-Probing On-Chip Debugging Power Estimation & Analysis FPGA Development Techniques 42
43 Cross-Probing to Floorplanner Example Click on Path OR Click on Net FPGA Development Techniques 43
44 Reference Material The Answers Database: support.xilinx.com latest information on advanced constaints: using the DCM with phase offset, DDR I/O, etc... The Constraints Guide syntax and examples for PERIOD, OFFSET, MAXDELAY, etc The Development Systems Reference Guide command line options for par, trce, etc On-line documentation: FPGA Development Techniques 44
45 Outline Static Timing Analysis On-Chip Debugging Traditional Debugging Techniques Introduction to On-Chip Debugging On-Chip Debugging Features Demonstration of On-Chip Debugging Power Estimation & Analysis FPGA Development Techniques 45
46 System Debug and Verification is Critical Pressure of Time-to-Market deadlines Design milestones need to be met The debug phase is typically the largest variable in the development cycle FPGA Development Techniques 46
47 Typical Board Debug Setup Download Cable Scope Probe Logic Analyzer 40-Pin Pod FPGA Development Techniques 47
48 FPGA Debug Issues FPGAs are getting bigger and faster Packages getting smaller with more pins, and pin pitches are smaller Number of board layers is increasing Test point headers are consuming valuable board space Access to logic analyzers FPGA Development Techniques 48
49 Existing Solution: FPGA Editor and Probe Bring internal nodes out to a pin All nets available Use any available pin Additional routing delay is given No need to re-run Place and Route!!! Run Bitgen and download FPGA Development Techniques 49
50 FPGA Editor and Probe FPGA Development Techniques 50
51 The Need for On-Chip Debug Traditional board level testing methods are not enough Need internal access to signals, nodes and system buses Integrated IP means wider, faster busses = more I/O pins dedicated to debug No direct access to IP within the FPGA Difficult to drive high speed clocks and signals off chip without introducing new problems High pin count, fine pitch packaging makes accessing pins nearly impossible FPGA Development Techniques 51
52 Outline Static Timing Analysis On-Chip Debugging Traditional Debugging Techniques Introduction to On-Chip Debugging On-Chip Debugging Features Demonstration of On-Chip Debugging Power Estimation & Analysis FPGA Development Techniques 52
53 The ChipScope Pro Solution Logic analysis core integrated in the FPGA Software interface to monitor and analyze results Access to all internal design nodes Many flexible trigger options Operates at the full system speed synchronous to the design clock up to 350 MHz Available for Virtex, Spartan-II and later FPGA families FPGA Development Techniques 53
54 Debugging with Chipscope Pro JTAG Connections USB port -or- Serial Port Simple! FPGA Development Techniques 54
55 The ChipScope Pro System IO Pads ILA IP Core PPC405 Core IO IO Pads Pads ILA IBACustom Logic Memory Array Embedded System Bus Custom Core ICON ILA Boundary Scan TAP Controller Target Connection ILA IO Pads FPGA fabric provides full internal visibility Access all the internal signals and nodes within the FPGA Access system busses implemented in the FPGA Debug occurs at or near system speeds Debug on-chip using the system clock Minimize pins needed for debug Access via the existing JTAG interface FPGA Development Techniques 55
56 ChipScope Pro Components ChipScope Pro Soft Cores ICON Integrated Control Core communication to BSCAN ILA Integrated Logic Analysis Core ATC2 ILA core with Agilent ATC2 support for off-chip data capture & pin reduction IBA Integrated Bus Analysis Core for CoreConnect OPB and PLB VIO Virtual Input Output cores for internal stimulus ChipScope Pro Software ChipScope Pro Core Generator ChipScope Pro Core Inserter ChipScope Pro Analyzer Support for logic and bus analysis Project-centric interface ChipScope Pro Communication Parallel Cable III and IV, MultiLINX, and Agilent FPGA Trace Port Analyzer via JTAG and Trace Port ChipScope Pro Device Support Spartan-II, Spartan-IIE, Spartan-3, Virtex, Virtex-E, Virtex-II, Virtex-II Pro & Virtex-4 FPGA Development Techniques 56
57 ChipScope Pro Analyzer ChipScope Pro Logic and Bus Analysis Interface Makes Debug and Verification Easy Multiple windows Bus Plotting (Data vs. Time, Data vs. Data) Windows Capture Mode Enables User to Compare Data Captured After Multiple Trigger Events New Listing Viewer Import Bus Token Files and View Instructions As They Occurred Core Polling Disable Eliminate Conflicts with Software Debugger and Other JTAG Tools VIO Console Assign Inputs, Pulse Trains and View Signal Activity New Print Support FPGA Development Techniques 57
58 Xilinx On-Chip Debugging Strategy Design with Debug and Verification in Mind Adopt an On-Chip Verification and Debug Strategy Define the ChipScope Pro Cores Needed to Debug and Verify Design Allocate Resources for ChipScope Pro Cores BlockRAM Slice Logic BSCAN USER1 or USER2 Include Connectors in PCB Design JTAG Optional High-Speed Trace Port Define Target Connection Cable JTAG (PCIV or MultiLinx) Agilent FPGA Dynamic Probing FPGA Development Techniques 58
59 Static Timing Analysis On-Chip Debugging Outline Traditional Debugging Techniques Introduction to On-Chip Debugging On-Chip Debugging Features Demonstration of On-Chip Debugging Power Estimation & Analysis FPGA Development Techniques 59
60 ChipScope Pro ILA Core User Selectable 1 to 4 Trigger Ports Up to 256 Channels Per Trigger Port Multiple Match Units on Same Trigger Port Up to 16 Match Units Trigger Condition Sequencer Define Complex Trigger Sequences that Include up to 16 States or Levels Over 300Mhz performance FPGA Development Techniques 60
61 ChipScope Pro IBA Cores ChipScope IBA Pro Cores IBA Core Supports CoreConnect OPB and PLB Supports Both PPC and MicroBlaze OPB/PLB Buses Automatic Mapping of Bus Signals to Trigger/Data Ports CoreConnect OPB Protocol Violation Detection FPGA Development Techniques 61
62 ChipScope Pro VIO Core ChipScope Pro VIO Core Insert virtual pins into your design Input or Output Synchronous or Asynchronous System Clock or JTAG clock Up to 256 bits each Inputs are Virtual LEDs Different Refresh Rates Available Outputs are Virtual DIP Switches Force Value or Pulse Train into FPGA FPGA Development Techniques 62
63 ChipScope Pro Core Generator Adding ChipScope Pro Cores During Design Entry ChipScope Pro Core Generator Specify ILA, ATC2, IBA and VIO Cores Generate Synthesizable HDL to Add to Design HDL Access any Signal or Node with the FPGA Under Test Define Internal or External Memory Sample Storage Requirements FPGA Development Techniques 63
64 ChipScope Pro ILA Core Generator Features Define the number of Trigger Ports, Width and Number of Match Units Used Expanded Bit Values and Functions Based on Match Type Enable and Define Trigger Sequence FPGA Development Techniques 64
65 ChipScope Pro IBA Core Generator Features Target CoreConnect Processor Local Bus (PLB) or On-Chip Peripheral Bus (OPB) Embedded PowerPC or Soft Core MicroBlaze Trigger Input/Output Logic Detects PLB and OPB Bus Activity Drive External Equipment or Additional Cores Optional OPB Protocol Bus Monitor Detect 32 IBM CoreConnect OPB Protocol Violations FPGA Development Techniques 65
66 ChipScope Pro Core Inserter Insert ChipScope Pro ILA/ATC2 Cores No changes to source code required, modifications are performed on postsynthesis netlist Support All Available Trigger Options Same Options as Core Generator Easy to Use Core Configuration Trigger Options Tab Capture Settings Tab Net Connections Tab Easy to Remove ChipScope Pro Cores Remove.CDC This File from Project Available for HDL or EDIF Flows Core Inserter doesn t currently support for IBA or VIO Cores FPGA Development Techniques 66
67 ChipScope Pro Core Inserter Add ChipScope Pro Cores to an Existing Design ChipScope Pro Core Inserter Add ILA and ATC2 Cores to an Existing Design Netlist ChipScope Pro and ISE Integration ChipScope File (.CDC) Added to Project as a Source, Associated With the Top Level Design Source User Double-Clicks.CDC to Set Parameters and Connections Versions of ISE and ChipScope Pro Must Match Set ChipScope Pro Core Parameters and Connections Via This Source Automatically Launch the ChipScope Pro Analyzer Inserter Called Automatically During Translate Stage FPGA Development Techniques 67
68 Multiple windows Bus Plotting data vs. time data vs. data New listing viewer More trigger options Core polling disable Eliminate conflicts with software debuggers or other tools using the JTAG chain ChipScope Pro Analyzer Features FPGA Development Techniques 68
69 Storage Qualification Improves On-Chip Data Storage Define Boolean storage qualification conditions Determine whether to capture and store individual data samples Use trigger and storage qualification together When to start and stop capture To specify data to capture Reduces required storage while maintaining full visibility FPGA Development Techniques 69
70 VIO Console in Analyzer VIO Console gives you control over Virtual I/O ports View activity Assign internal inputs to FPGA FPGA Development Techniques 70
71 ChipScope CLB Resource Utilization Single basic ILA with ICON core for Virtex / -E or Spartan-II / -IIE: Trigger/Data Width Flops LUTs Slices Percentage of XCV % % % % % % FPGA Development Techniques 71
72 ChipScope Block RAM Resource Utilization Single basic ILA with ICON core for Virtex / -E or Spartan-II / -IIE Trigger/Data Width 256 samples 512 samples 1024 samples 2048 samples 4096 samples 2 1 unit 1 unit 1 unit 1 unit 2 units 4 1 unit 1 unit 1 unit 2 units 4 units 8 1 unit 1 unit 2 units 4 units 8 units 16 1 unit 2 units 4 units 8 units 16 units 32 2 units 4 units 8 units 16 units 32 units 64 4 units 8 units 16 units 32 units 64 units Spartan-3 & Virtex-II / -II Pro / -4 BRAMs are four times larger FPGA Development Techniques 72
73 Integration with FPGA Editor Change data and/or trigger nets connected to ILA......without re-running PAR! Insert ILA and ICON into synthesized design Connect Clock, Control and Data Points to Cores Place and Route Design Change Data Capture Points With FPGA Editor Run BitGen Download Design Set Triggers Run ILA Chipscope FPGA Development Techniques 73
74 ILA in FPGA Editor Select new net to analyze FPGA Development Techniques 74
75 FPGA Dynamic Probe Measures new groups of internal FPGA signals in seconds without: Recompiling the design Impacting the timing of the design Save 15 min to 10 hours per new measurement Achieves wider internal visibility over a fixed number of pins 64 internal probe points for every pin conserves FPGA resources Save 8 hours per problem by not having to create a testbench Eliminates error prone & time consuming tasks Automates signal/bus labeling from FPGA design to logic analyzer Maps FPGA pins from board layout to logic analysis channels Save 2 to 30 minutes per new measurement FPGA Development Techniques 75
76 Agilent FPGA Dynamic Probe FPGA Dynamic Probe SW application supported by 1680/1690/16900 PC Board Probe MUX outputs of ATC2 core and PCB Signals Xilinx JTAG Cable Insert ATC2 core with ChipScope Pro FPGA ATC2 Dynamic control of ATC2 with your regular Xilinx Cable Works with Xilinx Virtex-4, Spartan-3, Virtex-II Pro and Virtex-II FPGAs JTAG Header FPGA Development Techniques 76
77 2, 4, 8, 16, or 32 input banks All banks have identical width (4 to 128 signals wide) Bank width determined by # of pins - each pin corresponds to 1 signal per bank Using optional 2X TDM in in state mode each pin corresponds to to 22 signals per per bank Agilent Trace Core (ATC2) 2 nd Generation Trace Core ATC2 Selection MUX Select 2X TDM JTAG Change input bank selection dynamically via JTAG Output to FPGA pins for debug Improved Signal Visibility Number of Debug Pins Maximum Internal Signals FPGA Development Techniques 77
78 Outline Static Timing Analysis On-Chip Debugging Traditional Debugging Techniques Introduction to On-Chip Debugging On-Chip Debugging Features Demonstration of On-Chip Debugging Power Estimation & Analysis FPGA Development Techniques 78
79 ChipScope Demonstration Block Diagram UART Rx Ain[15:0] Bin[15:0] [15:8] [7:0] LB a [15:8] [7:0] LB b FIFO 16 Byte CE a Rx_Data Rx_status Tx_status PROMstatus RAM_Data PROMin[7:0] BUTTONS [3:0] SWITCHES [7:0] Port 01 Port 00 Port 05 Port 04 Port 03 Port 02 KCPSM3 Program (BRAM) Port 14 Port 12 Port 11 Port 80 [17:16] [15:8] [7:0] *RAM address [17:0] * Common to both RAM devices RAM enables *WE *OE CE UB LB CE UB LB IC10 IC11 Ports E0-E3 Port A Dual Port RAM LED [7:0] 7-Segment Display DIN Port 40 PROM Reader Port 60 OE CCLK PROMin[7:0] 8 *OE [15:8] 16 IC10 [7:0] Data [15:0] Ain[15:0] 20-bit counter 2 MSBs A D dp,g,f,e,d,c,b,a decode ChipScope Probe Points AN3 AN2 AN1 AN0 Port C0 FIFO 16 Byte UART Tx Tx_status PROMstatus *OE [15:8] 16 IC11 [7:0] Data [15:0] Bin[15:0] FPGA Development Techniques 79
80 Four-Character, 7-Segment Control an individual character LED Display Details Drive anode control Low to select character 8 control lines light a specific segment on LED 4 anode control lines define which character responds FPGA Development Techniques 80
81 Outline Static Timing Analysis On-Chip Debugging Power Estimation & Analysis Initial Estimation Post-Implementation Analysis FPGA Development Techniques 81
82 Initial Power Estimation Online Estimation Tool: Available at: FPGA Development Techniques 82
83 Initial Power Estimation Tool Features Provide Resource Estimates: Save & Reload Data if required: FPGA Development Techniques 83
84 Outline Static Timing Analysis On-Chip Debugging Power Estimation & Analysis Initial Estimation Post-Implementation Analysis FPGA Development Techniques 84
85 Power Estimation with XPower Integrated in ISE s Project Navigator Operates on post-par netlist (NCD file) Generate stimuli manually or from timing simulation New Design Wizard: Load Design & Simulation Data Files FPGA Development Techniques 85
86 Power Estimation with XPower Step 1: Set / Verify Voltage, Ambient temperature, and Airflow Step 2: Set / Verify clock & input frequencies, and activity rates Step 3: Set / Verify Capacitive Loads for the outputs Step 4: Set / Verify DC loads for the outputs Step 5: Set / Verify enable rate for the bi-directional IO FPGA Development Techniques 86
87
Tutorial 11 ChipscopePro, ISE 10.1 and Xilinx Simulator on the Digilent Spartan-3E board
Tutorial 11 ChipscopePro, ISE 10.1 and Xilinx Simulator on the Digilent Spartan-3E board Introduction This lab will be an introduction on how to use ChipScope for the verification of the designs done on
More informationTKK S ASIC-PIIRIEN SUUNNITTELU
Design TKK S-88.134 ASIC-PIIRIEN SUUNNITTELU Design Flow 3.2.2005 RTL Design 10.2.2005 Implementation 7.4.2005 Contents 1. Terminology 2. RTL to Parts flow 3. Logic synthesis 4. Static Timing Analysis
More informationLogic Analysis Basics
Logic Analysis Basics September 27, 2006 presented by: Alex Dickson Copyright 2003 Agilent Technologies, Inc. Introduction If you have ever asked yourself these questions: What is a logic analyzer? What
More informationLogic Analysis Basics
Logic Analysis Basics September 27, 2006 presented by: Alex Dickson Copyright 2003 Agilent Technologies, Inc. Introduction If you have ever asked yourself these questions: What is a logic analyzer? What
More informationDEDICATED TO EMBEDDED SOLUTIONS
DEDICATED TO EMBEDDED SOLUTIONS DESIGN SAFE FPGA INTERNAL CLOCK DOMAIN CROSSINGS ESPEN TALLAKSEN DATA RESPONS SCOPE Clock domain crossings (CDC) is probably the worst source for serious FPGA-bugs that
More informationEEM Digital Systems II
ANADOLU UNIVERSITY DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EEM 334 - Digital Systems II LAB 3 FPGA HARDWARE IMPLEMENTATION Purpose In the first experiment, four bit adder design was prepared
More informationEXOSTIV TM. Frédéric Leens, CEO
EXOSTIV TM Frédéric Leens, CEO A simple case: a video processing platform Headers & controls per frame : 1.024 bits 2.048 pixels 1.024 lines Pixels per frame: 2 21 Pixel encoding : 36 bit Frame rate: 24
More informationUsing SignalTap II in the Quartus II Software
White Paper Using SignalTap II in the Quartus II Software Introduction The SignalTap II embedded logic analyzer, available exclusively in the Altera Quartus II software version 2.1, helps reduce verification
More informationFPGA Laboratory Assignment 4. Due Date: 06/11/2012
FPGA Laboratory Assignment 4 Due Date: 06/11/2012 Aim The purpose of this lab is to help you understanding the fundamentals of designing and testing memory-based processing systems. In this lab, you will
More informationScan. This is a sample of the first 15 pages of the Scan chapter.
Scan This is a sample of the first 15 pages of the Scan chapter. Note: The book is NOT Pinted in color. Objectives: This section provides: An overview of Scan An introduction to Test Sequences and Test
More informationProgrammable Logic Design I
Programmable Logic Design I Introduction In labs 11 and 12 you built simple logic circuits on breadboards using TTL logic circuits on 7400 series chips. This process is simple and easy for small circuits.
More informationWhy FPGAs? FPGA Overview. Why FPGAs?
Transistor-level Logic Circuits Positive Level-sensitive EECS150 - Digital Design Lecture 3 - Field Programmable Gate Arrays (FPGAs) January 28, 2003 John Wawrzynek Transistor Level clk clk clk Positive
More informationCOE758 Xilinx ISE 9.2 Tutorial 2. Integrating ChipScope Pro into a project
COE758 Xilinx ISE 9.2 Tutorial 2 ChipScope Overview Integrating ChipScope Pro into a project Conventional Signal Sampling Xilinx Spartan 3E FPGA JTAG 2 ChipScope Pro Signal Sampling Xilinx Spartan 3E FPGA
More informationEECS150 - Digital Design Lecture 18 - Circuit Timing (2) In General...
EECS150 - Digital Design Lecture 18 - Circuit Timing (2) March 17, 2010 John Wawrzynek Spring 2010 EECS150 - Lec18-timing(2) Page 1 In General... For correct operation: T τ clk Q + τ CL + τ setup for all
More informationPrototyping an ASIC with FPGAs. By Rafey Mahmud, FAE at Synplicity.
Prototyping an ASIC with FPGAs By Rafey Mahmud, FAE at Synplicity. With increased capacity of FPGAs and readily available off-the-shelf prototyping boards sporting multiple FPGAs, it has become feasible
More informationMemory Interfaces Data Capture Using Direct Clocking Technique Author: Maria George
Application Note: Virtex-4 Family R XAPP701 (v1.4) October 2, 2006 Memory Interfaces Data Capture Using Direct Clocking Technique Author: Maria George Summary This application note describes the direct-clocking
More informationLFSRs as Functional Blocks in Wireless Applications Author: Stephen Lim and Andy Miller
XAPP22 (v.) January, 2 R Application Note: Virtex Series, Virtex-II Series and Spartan-II family LFSRs as Functional Blocks in Wireless Applications Author: Stephen Lim and Andy Miller Summary Linear Feedback
More informationMemec Spartan-II LC User s Guide
Memec LC User s Guide July 21, 2003 Version 1.0 1 Table of Contents Overview... 4 LC Development Board... 4 LC Development Board Block Diagram... 6 Device... 6 Clock Generation... 7 User Interfaces...
More informationAuthentic Time Hardware Co-simulation of Edge Discovery for Video Processing System
Authentic Time Hardware Co-simulation of Edge Discovery for Video Processing System R. NARESH M. Tech Scholar, Dept. of ECE R. SHIVAJI Assistant Professor, Dept. of ECE PRAKASH J. PATIL Head of Dept.ECE,
More informationSolutions to Embedded System Design Challenges Part II
Solutions to Embedded System Design Challenges Part II Time-Saving Tips to Improve Productivity In Embedded System Design, Validation and Debug Hi, my name is Mike Juliana. Welcome to today s elearning.
More informationSystem IC Design: Timing Issues and DFT. Hung-Chih Chiang
System IC esign: Timing Issues and FT Hung-Chih Chiang Outline SoC Timing Issues Timing terminologies Synchronous vs. asynchronous design Interfaces and timing closure Clocking issues Reset esign for Testability
More informationAchieving Timing Closure in ALTERA FPGAs
Achieving Timing Closure in ALTERA FPGAs Course Description This course provides all necessary theoretical and practical know-how to write system timing constraints for variety designs in ALTERA FPGAs.
More informationLaboratory 1 - Introduction to Digital Electronics and Lab Equipment (Logic Analyzers, Digital Oscilloscope, and FPGA-based Labkit)
Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6. - Introductory Digital Systems Laboratory (Spring 006) Laboratory - Introduction to Digital Electronics
More informationFPGA Design. Part I - Hardware Components. Thomas Lenzi
FPGA Design Part I - Hardware Components Thomas Lenzi Approach We believe that having knowledge of the hardware components that compose an FPGA allow for better firmware design. Being able to visualise
More informationFaculty of Electrical & Electronics Engineering BEE3233 Electronics System Design. Laboratory 3: Finite State Machine (FSM)
Faculty of Electrical & Electronics Engineering BEE3233 Electronics System Design Laboratory 3: Finite State Machine (FSM) Mapping CO, PO, Domain, KI : CO2,PO3,P5,CTPS5 CO2: Construct logic circuit using
More informationEE178 Lecture Module 4. Eric Crabill SJSU / Xilinx Fall 2005
EE178 Lecture Module 4 Eric Crabill SJSU / Xilinx Fall 2005 Lecture #9 Agenda Considerations for synchronizing signals. Clocks. Resets. Considerations for asynchronous inputs. Methods for crossing clock
More informationHigh-Performance DDR2 SDRAM Interface Data Capture Using ISERDES and OSERDES Author: Maria George
Application Note: Virtex-4 FPGAs XAPP721 (v2.2) July 29, 2009 High-Performance DD2 SDAM Interface Data Capture Using ISEDES and OSEDES Author: Maria George Summary This application note describes a data
More informationSignalTap Plus System Analyzer
SignalTap Plus System Analyzer June 2000, ver. 1 Data Sheet Features Simultaneous internal programmable logic device (PLD) and external (board-level) logic analysis 32-channel external logic analyzer 166
More informationFPGA Design with VHDL
FPGA Design with VHDL Justus-Liebig-Universität Gießen, II. Physikalisches Institut Ming Liu Dr. Sören Lange Prof. Dr. Wolfgang Kühn ming.liu@physik.uni-giessen.de Lecture Digital design basics Basic logic
More informationDigilent Nexys-3 Cellular RAM Controller Reference Design Overview
Digilent Nexys-3 Cellular RAM Controller Reference Design Overview General Overview This document describes a reference design of the Cellular RAM (or PSRAM Pseudo Static RAM) controller for the Digilent
More informationT1 Deframer. LogiCORE Facts. Features. Applications. General Description. Core Specifics
November 10, 2000 Xilinx Inc. 2100 Logic Drive San Jose, CA 95124 Phone: +1 408-559-7778 Fax: +1 408-559-7114 E-mail: support@xilinx.com URL: www.xilinx.com/ipcenter Features Supports T1-D4 and T1-ESF
More informationStatic Timing Analysis for Nanometer Designs
J. Bhasker Rakesh Chadha Static Timing Analysis for Nanometer Designs A Practical Approach 4y Spri ringer Contents Preface xv CHAPTER 1: Introduction / 1.1 Nanometer Designs 1 1.2 What is Static Timing
More informationL12: Reconfigurable Logic Architectures
L12: Reconfigurable Logic Architectures Acknowledgements: Materials in this lecture are courtesy of the following sources and are used with permission. Frank Honore Prof. Randy Katz (Unified Microelectronics
More informationhttps://daffy1108.wordpress.com/2014/06/08/synchronizers-for-asynchronous-signals/
https://daffy1108.wordpress.com/2014/06/08/synchronizers-for-asynchronous-signals/ Synchronizers for Asynchronous Signals Asynchronous signals causes the big issue with clock domains, namely metastability.
More informationDC Ultra. Concurrent Timing, Area, Power and Test Optimization. Overview
DATASHEET DC Ultra Concurrent Timing, Area, Power and Test Optimization DC Ultra RTL synthesis solution enables users to meet today s design challenges with concurrent optimization of timing, area, power
More informationLogiCORE IP Video Timing Controller v3.0
LogiCORE IP Video Timing Controller v3.0 Product Guide Table of Contents Chapter 1: Overview Standards Compliance....................................................... 6 Feature Summary............................................................
More informationDesign and Implementation of SOC VGA Controller Using Spartan-3E FPGA
Design and Implementation of SOC VGA Controller Using Spartan-3E FPGA 1 ARJUNA RAO UDATHA, 2 B.SUDHAKARA RAO, 3 SUDHAKAR.B. 1 Dept of ECE, PG Scholar, 2 Dept of ECE, Associate Professor, 3 Electronics,
More informationCombinational vs Sequential
Combinational vs Sequential inputs X Combinational Circuits outputs Z A combinational circuit: At any time, outputs depends only on inputs Changing inputs changes outputs No regard for previous inputs
More informationTestability: Lecture 23 Design for Testability (DFT) Slide 1 of 43
Testability: Lecture 23 Design for Testability (DFT) Shaahin hi Hessabi Department of Computer Engineering Sharif University of Technology Adapted, with modifications, from lecture notes prepared p by
More informationRadar Signal Processing Final Report Spring Semester 2017
Radar Signal Processing Final Report Spring Semester 2017 Full report report by Brian Larson Other team members, Grad Students: Mohit Kumar, Shashank Joshil Department of Electrical and Computer Engineering
More informationImplementation of Dynamic RAMs with clock gating circuits using Verilog HDL
Implementation of Dynamic RAMs with clock gating circuits using Verilog HDL B.Sanjay 1 SK.M.Javid 2 K.V.VenkateswaraRao 3 Asst.Professor B.E Student B.E Student SRKR Engg. College SRKR Engg. College SRKR
More informationModeling 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 informationLAX_x Logic Analyzer
Legacy documentation LAX_x Logic Analyzer Summary This core reference describes how to place and use a Logic Analyzer instrument in an FPGA design. Core Reference CR0103 (v2.0) March 17, 2008 The LAX_x
More informationL11/12: Reconfigurable Logic Architectures
L11/12: Reconfigurable Logic Architectures Acknowledgements: Materials in this lecture are courtesy of the following people and used with permission. - Randy H. Katz (University of California, Berkeley,
More information11. Sequential Elements
11. Sequential Elements Jacob Abraham Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 2017 October 11, 2017 ECE Department, University of Texas at Austin
More informationAt-speed Testing of SOC ICs
At-speed Testing of SOC ICs Vlado Vorisek, Thomas Koch, Hermann Fischer Multimedia Design Center, Semiconductor Products Sector Motorola Munich, Germany Abstract This paper discusses the aspects and associated
More informationModeling Latches and Flip-flops
Lab Workbook Introduction Sequential circuits are the digital circuits in which the output depends not only on the present input (like combinatorial circuits), but also on the past sequence of inputs.
More informationLMH0340/LMH0341 SerDes EVK User Guide
LMH0340/LMH0341 SerDes EVK User Guide July 1, 2008 Version 1.05 1 1... Overview 3 2... Evaluation Kit (SD3GXLEVK) Contents 3 3... Hardware Setup 4 3.1 ALP100 BOARD (MAIN BOARD) DESCRIPTION 5 3.2 SD340EVK
More informationCAD for VLSI Design - I Lecture 38. V. Kamakoti and Shankar Balachandran
1 CAD for VLSI Design - I Lecture 38 V. Kamakoti and Shankar Balachandran 2 Overview Commercial FPGAs Architecture LookUp Table based Architectures Routing Architectures FPGA CAD flow revisited 3 Xilinx
More informationLow Power VLSI Circuits and Systems Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur
Low Power VLSI Circuits and Systems Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No. # 29 Minimizing Switched Capacitance-III. (Refer
More informationPerformance Evolution of 16 Bit Processor in FPGA using State Encoding Techniques
Performance Evolution of 16 Bit Processor in FPGA using State Encoding Techniques Madhavi Anupoju 1, M. Sunil Prakash 2 1 M.Tech (VLSI) Student, Department of Electronics & Communication Engineering, MVGR
More informationPROCESSOR BASED TIMING SIGNAL GENERATOR FOR RADAR AND SENSOR APPLICATIONS
PROCESSOR BASED TIMING SIGNAL GENERATOR FOR RADAR AND SENSOR APPLICATIONS Application Note ABSTRACT... 3 KEYWORDS... 3 I. INTRODUCTION... 4 II. TIMING SIGNALS USAGE AND APPLICATION... 5 III. FEATURES AND
More informationMemory Interfaces Data Capture Using Direct Clocking Technique Author: Maria George
Application Note: Virtex-4 Family XAPP701 (v1.3) September 13, 2005 Memory Interfaces Data Capture Using Direct Clocking Technique Author: Maria George Summary This application note describes the direct-clocking
More informationEECS150 - Digital Design Lecture 3 Synchronous Digital Systems Review. Announcements
EECS150 - Digital Design Lecture 3 Synchronous Digital Systems Review September 1, 2011 Elad Alon Electrical Engineering and Computer Sciences University of California, Berkeley http://www-inst.eecs.berkeley.edu/~cs150
More informationDesign for Testability
TDTS 01 Lecture 9 Design for Testability Zebo Peng Embedded Systems Laboratory IDA, Linköping University Lecture 9 The test problems Fault modeling Design for testability techniques Zebo Peng, IDA, LiTH
More informationObjectives. Combinational logics Sequential logics Finite state machine Arithmetic circuits Datapath
Objectives Combinational logics Sequential logics Finite state machine Arithmetic circuits Datapath In the previous chapters we have studied how to develop a specification from a given application, and
More informationDesign and analysis of microcontroller system using AMBA- Lite bus
Design and analysis of microcontroller system using AMBA- Lite bus Wang Hang Suan 1,*, and Asral Bahari Jambek 1 1 School of Microelectronic Engineering, Universiti Malaysia Perlis, Perlis, Malaysia Abstract.
More information2.6 Reset Design Strategy
2.6 Reset esign Strategy Many design issues must be considered before choosing a reset strategy for an ASIC design, such as whether to use synchronous or asynchronous resets, will every flipflop receive
More informationLaboratory Exercise 4
Laboratory Exercise 4 Polling and Interrupts The purpose of this exercise is to learn how to send and receive data to/from I/O devices. There are two methods used to indicate whether or not data can be
More informationUsing the Quartus II Chip Editor
Using the Quartus II Chip Editor June 2003, ver. 1.0 Application Note 310 Introduction Altera FPGAs have made tremendous advances in capacity and performance. Today, Altera Stratix and Stratix GX devices
More information1. Synopsis: 2. Description of the Circuit:
Design of a Binary Number Lock (using schematic entry method) 1. Synopsis: This lab gives you more exercise in schematic entry, state machine design using the one-hot state method, further understanding
More informationProduct Obsolete/Under Obsolescence
APPLICATION NOTE 0 R Designing Flexible, Fast CAMs with Virtex Family FPGAs XAPP203, September 23, 999 (Version.) 0 8* Application Note: Jean-Louis Brelet & Bernie New Summary Content Addressable Memories
More informationEE178 Spring 2018 Lecture Module 5. Eric Crabill
EE178 Spring 2018 Lecture Module 5 Eric Crabill Goals Considerations for synchronizing signals Clocks Resets Considerations for asynchronous inputs Methods for crossing clock domains Clocks The academic
More informationEITF35: Introduction to Structured VLSI Design
EITF35: Introduction to Structured VLSI Design Part 4.2.1: Learn More Liang Liu liang.liu@eit.lth.se 1 Outline Crossing clock domain Reset, synchronous or asynchronous? 2 Why two DFFs? 3 Crossing clock
More informationCHAPTER 3 EXPERIMENTAL SETUP
CHAPTER 3 EXPERIMENTAL SETUP In this project, the experimental setup comprised of both hardware and software. Hardware components comprised of Altera Education Kit, capacitor and speaker. While software
More informationLecture 23 Design for Testability (DFT): Full-Scan
Lecture 23 Design for Testability (DFT): Full-Scan (Lecture 19alt in the Alternative Sequence) Definition Ad-hoc methods Scan design Design rules Scan register Scan flip-flops Scan test sequences Overheads
More informationSimulation Mismatches Can Foul Up Test-Pattern Verification
1 of 5 12/17/2009 2:59 PM Technologies Design Hotspots Resources Shows Magazine ebooks & Whitepapers Jobs More... Click to view this week's ad screen [ D e s i g n V i e w / D e s i g n S o lu ti o n ]
More informationFSM Cookbook. 1. Introduction. 2. What Functional Information Must be Modeled
FSM Cookbook 1. Introduction Tau models describe the timing and functional information of component interfaces. Timing information specifies the delay in placing values on output signals and the timing
More informationUsing on-chip Test Pattern Compression for Full Scan SoC Designs
Using on-chip Test Pattern Compression for Full Scan SoC Designs Helmut Lang Senior Staff Engineer Jens Pfeiffer CAD Engineer Jeff Maguire Principal Staff Engineer Motorola SPS, System-on-a-Chip Design
More informationClock Domain Crossing. Presented by Abramov B. 1
Clock Domain Crossing Presented by Abramov B. 1 Register Transfer Logic Logic R E G I S T E R Transfer Logic R E G I S T E R Presented by Abramov B. 2 RTL (cont) An RTL circuit is a digital circuit composed
More informationDigital Blocks Semiconductor IP
Digital Blocks Semiconductor IP General Description The Digital Blocks core is a full function equivalent to the Motorola MC6845 device. The interfaces a microprocessor to a raster-scan CRT display. The
More informationVHDL Design and Implementation of FPGA Based Logic Analyzer: Work in Progress
VHDL Design and Implementation of FPGA Based Logic Analyzer: Work in Progress Nor Zaidi Haron Ayer Keroh +606-5552086 zaidi@utem.edu.my Masrullizam Mat Ibrahim Ayer Keroh +606-5552081 masrullizam@utem.edu.my
More informationCSE140L: Components and Design Techniques for Digital Systems Lab. CPU design and PLDs. Tajana Simunic Rosing. Source: Vahid, Katz
CSE140L: Components and Design Techniques for Digital Systems Lab CPU design and PLDs Tajana Simunic Rosing Source: Vahid, Katz 1 Lab #3 due Lab #4 CPU design Today: CPU design - lab overview PLDs Updates
More informationFPGA Based Implementation of Convolutional Encoder- Viterbi Decoder Using Multiple Booting Technique
FPGA Based Implementation of Convolutional Encoder- Viterbi Decoder Using Multiple Booting Technique Dr. Dhafir A. Alneema (1) Yahya Taher Qassim (2) Lecturer Assistant Lecturer Computer Engineering Dept.
More informationLab #10 Hexadecimal-to-Seven-Segment Decoder, 4-bit Adder-Subtractor and Shift Register. Fall 2017
University of Texas at El Paso Electrical and Computer Engineering Department EE 2169 Laboratory for Digital Systems Design I Lab #10 Hexadecimal-to-Seven-Segment Decoder, 4-bit Adder-Subtractor and Shift
More informationECE 270 Lab Verification / Evaluation Form. Experiment 9
ECE 270 Lab Verification / Evaluation Form Experiment 9 Evaluation: IMPORTANT! You must complete this experiment during your scheduled lab period. All work for this experiment must be demonstrated to and
More informationLecture 23 Design for Testability (DFT): Full-Scan (chapter14)
Lecture 23 Design for Testability (DFT): Full-Scan (chapter14) Definition Ad-hoc methods Scan design Design rules Scan register Scan flip-flops Scan test sequences Overheads Scan design system Summary
More informationReport on 4-bit Counter design Report- 1, 2. Report on D- Flipflop. Course project for ECE533
Report on 4-bit Counter design Report- 1, 2. Report on D- Flipflop Course project for ECE533 I. Objective: REPORT-I The objective of this project is to design a 4-bit counter and implement it into a chip
More information9. Synopsys PrimeTime Support
9. Synopsys PrimeTime Support December 2010 QII53005-10.0.1 QII53005-10.0.1 PrimeTime is the Synopsys stand-alone full chip, gate-level static timing analyzer. The Quartus II software makes it easy for
More informationLab #5: Design Example: Keypad Scanner and Encoder - Part 1 (120 pts)
Nate Pihlstrom, npihlstr@uccs.edu Lab #5: Design Example: Keypad Scanner and Encoder - Part 1 (120 pts) Objective The objective of lab assignments 5 through 9 are to systematically design and implement
More informationHDL & High Level Synthesize (EEET 2035) Laboratory II Sequential Circuits with VHDL: DFF, Counter, TFF and Timer
1 P a g e HDL & High Level Synthesize (EEET 2035) Laboratory II Sequential Circuits with VHDL: DFF, Counter, TFF and Timer Objectives: Develop the behavioural style VHDL code for D-Flip Flop using gated,
More informationWINTER 15 EXAMINATION Model Answer
Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer scheme. 2) The model answer and the answer written by candidate
More informationECT 224: Digital Computer Fundamentals Digital Circuit Simulation & Timing Analysis
ECT 224: Digital Computer Fundamentals Digital Circuit Simulation & Timing Analysis 1) Start the Xilinx ISE application, open Start All Programs Xilinx ISE 9.1i Project Navigator or use the shortcut on
More informationDigital Electronics II 2016 Imperial College London Page 1 of 8
Information for Candidates: The following notation is used in this paper: 1. Unless explicitly indicated otherwise, digital circuits are drawn with their inputs on the left and their outputs on the right.
More informationInternational Journal of Scientific & Engineering Research, Volume 5, Issue 9, September ISSN
International Journal of Scientific & Engineering Research, Volume 5, Issue 9, September-2014 917 The Power Optimization of Linear Feedback Shift Register Using Fault Coverage Circuits K.YARRAYYA1, K CHITAMBARA
More informationFPGA TechNote: Asynchronous signals and Metastability
FPGA TechNote: Asynchronous signals and Metastability This Doulos FPGA TechNote gives a brief overview of metastability as it applies to the design of FPGAs. The first section introduces metastability
More informationVHDL Upgrading of a TNT2 card
VHDL Upgrading of a TNT2 card 1) Get some JTAG programming device... 1 2) Download the software to program Xilinx Component : IMPACT... 2 3) Virtex s 3 EEPROM s upgrade... 2 4) Spartan s EEPROM upgrade...
More informationOF AN ADVANCED LUT METHODOLOGY BASED FIR FILTER DESIGN PROCESS
IMPLEMENTATION OF AN ADVANCED LUT METHODOLOGY BASED FIR FILTER DESIGN PROCESS 1 G. Sowmya Bala 2 A. Rama Krishna 1 PG student, Dept. of ECM. K.L.University, Vaddeswaram, A.P, India, 2 Assistant Professor,
More informationECEN689: Special Topics in High-Speed Links Circuits and Systems Spring 2011
ECEN689: Special Topics in High-Speed Links Circuits and Systems Spring 2011 Lecture 9: TX Multiplexer Circuits Sam Palermo Analog & Mixed-Signal Center Texas A&M University Announcements & Agenda Next
More informationRemote Diagnostics and Upgrades
Remote Diagnostics and Upgrades Tim Pender -Eastman Kodak Company 10/03/03 About this Presentation Motivation for Remote Diagnostics Reduce Field Maintenance costs Product needed to support 100 JTAG chains
More informationMain Design Project. The Counter. Introduction. Macros. Procedure
Main Design Project Introduction In order to gain some experience with using macros we will exploit some of the features of our boards to construct a counter that will count from 0 to 59 with the counts
More informationChipScope Pro Serial I/O Toolkit User Guide
ChipScope Pro Serial I/O Toolkit User Guide (ChipScope Pro Software 9.2i) R R Xilinx is disclosing this Document and Intellectual Property (hereinafter the Design ) to you for use in the development of
More informationUnit 11. Latches and Flip-Flops
Unit 11 Latches and Flip-Flops 1 Combinational Circuits A combinational circuit consists of logic gates whose outputs, at any time, are determined by combining the values of the inputs. For n input variables,
More informationSequential Circuit Design: Principle
Sequential Circuit Design: Principle modified by L.Aamodt 1 Outline 1. 2. 3. 4. 5. 6. 7. 8. Overview on sequential circuits Synchronous circuits Danger of synthesizing asynchronous circuit Inference of
More informationSharif University of Technology. SoC: Introduction
SoC Design Lecture 1: Introduction Shaahin Hessabi Department of Computer Engineering System-on-Chip System: a set of related parts that act as a whole to achieve a given goal. A system is a set of interacting
More informationEECS150 - Digital Design Lecture 10 - Interfacing. Recap and Topics
EECS150 - Digital Design Lecture 10 - Interfacing Oct. 1, 2013 Prof. Ronald Fearing Electrical Engineering and Computer Sciences University of California, Berkeley (slides courtesy of Prof. John Wawrzynek)
More informationSaving time & money with JTAG
Saving time & money with JTAG AltiumLive 2017: ANNUAL PCB DESIGN SUMMIT Simon Payne CEO, XJTAG Ltd. Saving time and money with JTAG JTAG / IEEE 1149.X Take-away points Get JTAG right from the start Use
More informationDS099-E08 (v2.5) December 14, 2006
DS099-E08 (v2.5) December 14, 2006 XC3S4000 and XC3S4000L FPGA Errata and Deviations from Spartan-3/3L Data Sheet Errata Notice These errata apply ONLY to Spartan-3 XC3S4000 and XC3S4000L FPGAs, including
More informationTTC Interface Module for ATLAS Read-Out Electronics: Final production version based on Xilinx FPGA devices
Physics & Astronomy HEP Electronics TTC Interface Module for ATLAS Read-Out Electronics: Final production version based on Xilinx FPGA devices LECC 2004 Matthew Warren warren@hep.ucl.ac.uk Jon Butterworth,
More informationReconfigurable Architectures. Greg Stitt ECE Department University of Florida
Reconfigurable Architectures Greg Stitt ECE Department University of Florida How can hardware be reconfigurable? Problem: Can t change fabricated chip ASICs are fixed Solution: Create components that can
More information