iit bombay
play

IIT Bombay CDEEP Autumn 2009 Introduction to Programmable Logic - PowerPoint PPT Presentation

IIT Bombay CDEEP Autumn 2009 Introduction to Programmable Logic Design Flow Presented by- Anil Powai Labs Tech. Pvt. Ltd. EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini IIT Bombay Programmable Logic


  1. IIT Bombay CDEEP Autumn 2009 Introduction to Programmable Logic Design Flow Presented by- Anil Powai Labs Tech. Pvt. Ltd. EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  2. IIT Bombay Programmable Logic Devices • PLAs (programmable logic array): – Two level structures of AND and OR gates with user programmable connections – Architecture not scalable; Power consumption and delays play an important role in extending the architecture to complex designs – Implementation of larger designs leads to same difficulty as that of discrete components EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  3. IIT Bombay Programmable Logic Devices • For high capacity – A complex PLD (CPLD) is a collection of multiple PLDs and an interconnection structure. – FPGA (Field Programmable Logic Devices) contains a much larger number of smaller individual blocks + large interconnection structure – Customized by end user – Implements multi-level logic function – Fast time to market and low risk EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  4. IIT Bombay FPGA – A Quick Look • Two dimensional array of customizable logic block placed in an interconnect array. • Programmable at users site. • Implements thousands of gates of logic in a single device – Employs logic and interconnect structure capable of implementing multi-level logic EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  5. IIT Bombay FPGA – A Detailed Look • FPGA is a programmable logic chip that consists of an array of multiple logic elements usually in form of RAM- controlled Look-up Tables (LUT). • Interconnection framework comprises of wire segments and switches; Provide a means to interconnect logic blocks. • Circuits are partitioned to logic block size, mapped and routed. EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  6. IIT Bombay FPGA Architecture (Simplified Diagram) • Basic building block EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  7. IIT Bombay Four-Input LUT Truth Table • Implements In p u t s(A B CD ) O u t p u t (Z ) combinatorial logic 0 0 0 0 0 – Any 4-input logic 0 0 0 1 0 0 0 1 0 1 function 0 0 1 1 0 – Cascaded for wide-input … … .. functions 1 1 1 0 1 1 1 1 1 1 4-input logic function A = LUT B Z C D EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  8. IIT Bombay Interconnection Framework 3 types: • Fast Direct Connections • General Purpose connections with Switching Matrix • Horizontal/Vertical Long Lines Types of lines: • Single length • Long lines • Global lines EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  9. IIT Bombay Programmable Switch Matrix EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  10. IIT Bombay Detail view of inside wiring EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  11. IIT Bombay Field Programmability • Field programmability is achieved through switches (Transistors controlled by memory elements or fuses) • Switches control the following aspects • Interconnection among wire segments • Configuration of logic blocks • Distributed memory elements controlling the switches and configuration of logic blocks are together called “Configuration Memory” EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  12. IIT Bombay SRAM Programming Technology • Employs SRAM (Static RAM) cells to control pass transistors and/or transmission gates • SRAM cells control the configuration of logic block as well • Volatile – Needs an external storage – Needs a power-on configuration mechanism – In-circuit re-programmable • Lesser configuration time • Occupies relatively larger area EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  13. IIT Bombay FPGA Modes • Configuration mode: – Power ON Mode, – Used to configure the FPGA. • User Mode: – Once configuration is complete, the FPGA goes into "user mode", its main mode of operation, where the programmed circuit actually starts functioning. EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  14. IIT Bombay Design Steps Involved in Designing With FPGAs  Understand and define design requirements  Design description  Behavioural simulation (Source code interpretation)  Synthesis  Functional or Gate level simulation  Implementation  Fitting  Place and Route  Timing or Post layout simulation  Programming, Test and Debug EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  15. IIT Bombay Design Entry • Design entry is the media through which specifications are entered into the soft format. • There are various ways in which the design can be entered. Some of the popular one’s are: – Designing with the help of schematics. – Designing using HDL’S [Hardware Description Language]. • VHDL logic description – VHDL= Very High Speed Integrated Circuit Hardware Description Language is used to describe the desired logic circuit. • Verilog logic description . EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  16. IIT Bombay Multiplexor: Design Entry specifications ip ip ip ip s1 s0 y 1 2 3 4 0 0 d0 0 1 d1 d0 d1 d2 d3 1 0 d2 1 1 d3 EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  17. IIT Bombay Synthesis • Synthesis is a process of converting HDL code into equivalent logic gates. Inputs to this process are – Design description – Target technology – Constraints • Results of the synthesis process are netlist (.ngc) and synthesis reports. • Tool can be directed to generate post synthesis simulation model and RTL view. EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  18. IIT Bombay Synthesis : Xst EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  19. IIT Bombay Implementation • Implementation includes many phases – Translate: Merge multiple design files into a single netlist – Map: Group logical symbols from the netlist (gates) into physical components (CLBs and IOBs) – Place & Route: Place components onto the chip, connect them, and extract timing data into reports. • Timing Simulation is carried out after place & route , gate delays and interconnect delays can be involved in this simulation. EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  20. IIT Bombay Programming • The BIT file can be downloaded directly to the FPGA, or can be converted into a PROM file which stores the programming information • There are two ways to program an FPGA – Through a PROM device • You will need to generate a file that the PROM programmer will understand – Directly from the computer • Use the iMPACT configuration tool EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  21. IIT Bombay Demonstration of Xilinx ISE tool • Two examples are used to demonstrates Xilinx ISE to synthesize flow. – Multiplexor – Finite State Machine EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  22. IIT Bombay Multiplexor example • Creating a new project – To invoke ISE- • $ ise & • Xilinx Project Navigator window will open – To create new project • Go to menu File/New Project to open New Project Wizard • Provide information such as ‘Project Name’, ‘Project Path’ & ‘Top Level Source Type’ EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  23. IIT Bombay Creating a new project EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  24. IIT Bombay Assigning Target Device EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  25. IIT Bombay Adding source files EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  26. IIT Bombay Specifying Pin Locations • Processes > User Constraints>Assign Package Pins EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  27. IIT Bombay Synthesis/Implementation • Running Design Synthesis and Implementation – Processes: Synthesize- XST – Processes: Implement Design EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  28. IIT Bombay Viewing Schematic • Viewing RTL schematic – Processes/Synthesize-XST/View RTL Schematic. • Viewing Technology schematic – Processes/Synthesize-XST/View Technology Schematic. EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

  29. IIT Bombay Synthesis Reports • Viewing Device Utilization and Timing summary. – Processes/Synthesiz e-XST/View Synthesis Report . EE705/707 Lectures No. 23 and 24 Prof. M. Shojaei Baghini

Recommend


More recommend