Part A Final presentation Dynamic System on Programmable Chip By: Nir Shahar and Amir Kleinhendler Supervisor: Ina Rivkin Spring/Winter 2006.

Slides:



Advertisements
Similar presentations
Xilinx 6.3 Tutorial Integrated Software Environment (ISE) Set up basic environment Select Gates or Modules to Be simulated (Insert Program Code) Run Waveform.
Advertisements

Sumitha Ajith Saicharan Bandarupalli Mahesh Borgaonkar.
Internal Logic Analyzer Final presentation-part B
University Of Vaasa Telecommunications Engineering Automation Seminar Signal Generator By Tibebu Sime 13 th December 2011.
EELE 367 – Logic Design Module 2 – Modern Digital Design Flow Agenda 1.History of Digital Design Approach 2.HDLs 3.Design Abstraction 4.Modern Design Steps.
Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003.
1 Performed By: Khaskin Luba Einhorn Raziel Einhorn Raziel Instructor: Rivkin Ina Spring 2004 Spring 2004 Virtex II-Pro Dynamical Test Application Part.
Performed by: Lin Ilia Khinich Fanny Instructor: Fiksman Eugene המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון - מכון טכנולוגי.
© 2004 Xilinx, Inc. All Rights Reserved Implemented by : Alon Ben Shalom Yoni Landau Project supervised by: Mony Orbach High speed digital systems laboratory.
1 Performed by: Lin Ilia Khinich Fanny Instructor: Fiksman Eugene המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון - מכון טכנולוגי.
Middle presentation Dynamic System on Programmable Chip By: Nir Shahar and Amir Kleinhendler Supervisor: Ina Rivkin Spring/Winter 2006.
Performed by : Rivka Cohen and Sharon Solomon Instructor : Walter Isaschar המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון.
DSP Algorithm on System on Chip Performed by : Einat Tevel Supervisor : Isaschar Walter Accompanying engineers : Emilia Burlak, Golan Inbar Technion -
Configurable System-on-Chip: Xilinx EDK
הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology department of Electrical Engineering Virtex II-PRO Dynamical.
FPGA BASED IMAGE PROCESSING Texas A&M University / Prairie View A&M University Over the past few decades, the improvements from machine language to objected.
Porting EDIF to Viva Sreesa Akella, Heather Wake, Duncan Buell, James P. Davis Department of Computer Science and Engineering, University of South Carolina.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Naor Huri Idan Shmuel.
Technion Digital Lab Project Xilinx ML310 board based on VirtexII-PRO programmable device Students: Tsimerman Igor Firdman Leonid Firdman Leonid.
1 Fast Communication for Multi – Core SOPC Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab.
Implementation of DSP Algorithm on SoC. Mid-Semester Presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompaning engineer : Emilia Burlak.
הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology department of Electrical Engineering Virtex II-PRO Dynamical.
Technion Digital Lab Project Performance evaluation of Virtex-II-Pro embedded solution of Xilinx Students: Tsimerman Igor Firdman Leonid Firdman.
Implementation of DSP Algorithm on SoC. Characterization presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompany engineer : Emilia Burlak.
Final presentation Encryption/Decryption on embedded system Supervisor: Ina Rivkin students: Chen Ponchek Liel Shoshan Winter 2013 Part A.
© 2011 Xilinx, Inc. All Rights Reserved Intro to System Generator This material exempt per Department of Commerce license exception TSU.
© 2011 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU Xilinx Tool Flow.
Out-of-Order OpenRISC 2 semesters project Semester A: Implementation of OpenRISC on XUPV5 board Final A Presentation By: Vova Menis-Lurie Sonia Gershkovich.
Students: Oleg Korenev Eugene Reznik Supervisor: Rolf Hilgendorf
Out-of-Order OpenRISC 2 semesters project Semester A: Implementation of OpenRISC on XUPV5 board Midterm Presentation By: Vova Menis-Lurie Sonia Gershkovich.
1 WORLD CLASS – through people, technology and dedication High level modem development for Radio Link INF3430/4431 H2013.
Ch.9 CPLD/FPGA Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
Spring Introduction  Today’s tutorial focuses on introducing you to Xilinx ISE and Modelsim.  These tools are used for Verilog Coding Simulation.
© 2003 Xilinx, Inc. All Rights Reserved For Academic Use Only Xilinx Design Flow FPGA Design Flow Workshop.
Group Electronique Csnsm AGATA SLOW CONTROL MEETING 19th fev AGATA PROJECT PREPROCESSING MEZZANINE SLOW CONTROL GUI FOR THE SEGMENT AND THE CORE.
VHDL Project Specification Naser Mohammadzadeh. Schedule  due date: Tir 18 th 2.
Report from Universidad Politécnica de Madrid Zorana Banković.
1 Abstract & Main Goal המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory The focus of this project was the creation of an analyzing device.
This material exempt per Department of Commerce license exception TSU Xilinx Tool Flow.
Part A Presentation Implementation of DSP Algorithm on SoC Student : Einat Tevel Supervisor : Isaschar Walter Accompanying engineer : Emilia Burlak The.
Lecture #3 Page 1 ECE 4110–5110 Digital System Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.HW#2 assigned Due.
Programmable Logic Training Course HDL Editor
CascadedBCDCntr&Display Aim : Capture, simulate and implement a 2-digit, loadable BCD up/down counter, with chip enable I/P (CE) and chip enable O/P (CEO).
Introductory project. Development systems Design Entry –Foundation ISE –Third party tools Mentor Graphics: FPGA Advantage Celoxica: DK Design Suite Design.
Infrastructure design & implementation of MIPS processors for students lab based on Bluespec HDL Students: Danny Hofshi, Shai Shachrur Supervisor: Mony.
Sub-Nyquist Sampling Algorithm Implementation on Flex Rio
Final Presentation Final Presentation OFDM implementation and performance test Performed by: Tomer Ben Oz Ariel Shleifer Guided by: Mony Orbach Duration:
© 2004 Xilinx, Inc. All Rights Reserved Adding a Processor System to an FPGA Design.
MIPS Pipeline and Branch Prediction Implementation Shuai Chang.
Fail-Safe Module for Unmanned Autonomous Vehicle
Digital Design Using VHDL and PLDs ECOM 4311 Digital System Design Chapter 1.
Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May – 9 June 2007 Javier.
DDRIII BASED GENERAL PURPOSE FIFO ON VIRTEX-6 FPGA ML605 BOARD PART B PRESENTATION STUDENTS: OLEG KORENEV EUGENE REZNIK SUPERVISOR: ROLF HILGENDORF 1 Semester:
Teaching Digital Logic courses with Altera Technology
Students: Avi Urman Kobi Maltinsky Supervisor: Rivkin Ina Semester: Spring 2012.
Lab Environment and Miniproject Assignment Spring 2009 ECE554 Digital Engineering Laboratory.
Design with Vivado IP Integrator
How to use ISE Dept. of Info & Comm. Eng. Prof. Jongbok Lee.
Introduction to the FPGA and Labs
ASIC Design Methodology
Using Xilinx ChipScope Pro Tools
Introduction to Programmable Logic
Course Agenda DSP Design Flow.
Week 5, Verilog & Full Adder
ChipScope Pro Software
VHDL Introduction.
ChipScope Pro Software
THE ECE 554 XILINX DESIGN PROCESS
Digital Designs – What does it take
THE ECE 554 XILINX DESIGN PROCESS
Presentation transcript:

Part A Final presentation Dynamic System on Programmable Chip By: Nir Shahar and Amir Kleinhendler Supervisor: Ina Rivkin Spring/Winter 2006

Global Project goals Designing A New Experiment for undergraduate students at the High Speed Digital Systems Laboratory Based on a Dynamic System (using SOPC platform).Designing A New Experiment for undergraduate students at the High Speed Digital Systems Laboratory Based on a Dynamic System (using SOPC platform). Dynamic Peripheral Designing and Implementation.Dynamic Peripheral Designing and Implementation. Designing A New Experiment for undergraduate students at the High Speed Digital Systems Laboratory Based on a Dynamic System (using SOPC platform).Designing A New Experiment for undergraduate students at the High Speed Digital Systems Laboratory Based on a Dynamic System (using SOPC platform). Dynamic Peripheral Designing and Implementation.Dynamic Peripheral Designing and Implementation.

Implementing a Simple Dynamic Peripheral.Implementing a Simple Dynamic Peripheral. Learning The FPGA Methodology.Learning The FPGA Methodology. – FPGA Logical Structure. – XUP Board, Virtex II pro, PPC. – FPGA Design Flow. – FPGA Design Tools ( EDK, ISE, Chip-Scope). –Implementing a Simple Dynamic Peripheral. Learning VHDL Design Methodology.Learning VHDL Design Methodology. –VHDL for Synthesis. –MODEL-SIM for Simulation. –HDL Design Tool. Dynamic Peripheral Designing and Implementation.Dynamic Peripheral Designing and Implementation. Implementing a Simple Dynamic Peripheral.Implementing a Simple Dynamic Peripheral. Learning The FPGA Methodology.Learning The FPGA Methodology. – FPGA Logical Structure. – XUP Board, Virtex II pro, PPC. – FPGA Design Flow. – FPGA Design Tools ( EDK, ISE, Chip-Scope). –Implementing a Simple Dynamic Peripheral. Learning VHDL Design Methodology.Learning VHDL Design Methodology. –VHDL for Synthesis. –MODEL-SIM for Simulation. –HDL Design Tool. PART A Goals

The Dynamic System Concept When we simulate a problem we can dynamically remove or replace a peripheral in-order to fix the simulated problem. Option 1 Option 2 Option 3

Status Update We have crossed the final step for the project’s first part.We have crossed the final step for the project’s first part. We Have implemented a dynamic periphery.We Have implemented a dynamic periphery. The knowledge we have acquired will be used for the second part of our project.The knowledge we have acquired will be used for the second part of our project. The periphery we have implemented here will demonstrate several problems students will encounter during the experiment.The periphery we have implemented here will demonstrate several problems students will encounter during the experiment. We have crossed the final step for the project’s first part.We have crossed the final step for the project’s first part. We Have implemented a dynamic periphery.We Have implemented a dynamic periphery. The knowledge we have acquired will be used for the second part of our project.The knowledge we have acquired will be used for the second part of our project. The periphery we have implemented here will demonstrate several problems students will encounter during the experiment.The periphery we have implemented here will demonstrate several problems students will encounter during the experiment.

System Creation Flow 3 bit FA We planned the block diagram of the complete system.We planned the block diagram of the complete system. We implemented the VHDL code.We implemented the VHDL code. Ran Model Sim simulations for the design (for logic validation).Ran Model Sim simulations for the design (for logic validation). We created a new user periphery with the new logic block (in EDK and ISE).We created a new user periphery with the new logic block (in EDK and ISE). Wrote the C code for the periphery usage.Wrote the C code for the periphery usage. We inserted a ChipScope probe into the design (this part was the most problematic part of the project).We inserted a ChipScope probe into the design (this part was the most problematic part of the project). We validated the functionality of the dynamic FA of the FPGA with the ChipScope.We validated the functionality of the dynamic FA of the FPGA with the ChipScope. We planned the block diagram of the complete system.We planned the block diagram of the complete system. We implemented the VHDL code.We implemented the VHDL code. Ran Model Sim simulations for the design (for logic validation).Ran Model Sim simulations for the design (for logic validation). We created a new user periphery with the new logic block (in EDK and ISE).We created a new user periphery with the new logic block (in EDK and ISE). Wrote the C code for the periphery usage.Wrote the C code for the periphery usage. We inserted a ChipScope probe into the design (this part was the most problematic part of the project).We inserted a ChipScope probe into the design (this part was the most problematic part of the project). We validated the functionality of the dynamic FA of the FPGA with the ChipScope.We validated the functionality of the dynamic FA of the FPGA with the ChipScope.

Periphery Top Overview The block diagram of the complete system.

We implemented the VHDL code.

Created a new user periphery with the new logic block (in EDK and ISE). In this stage we use several VHDL files to implement a design. In the Xilinx environment implementing user logic with several HDL files was challenging.In this stage we use several VHDL files to implement a design. In the Xilinx environment implementing user logic with several HDL files was challenging. We’ve done it by using the PAO file and importing libs.We’ve done it by using the PAO file and importing libs. In this stage we use several VHDL files to implement a design. In the Xilinx environment implementing user logic with several HDL files was challenging.In this stage we use several VHDL files to implement a design. In the Xilinx environment implementing user logic with several HDL files was challenging. We’ve done it by using the PAO file and importing libs.We’ve done it by using the PAO file and importing libs.

C code for the periphery usage. We wrote the C code using the Xilinx special commands.We wrote the C code using the Xilinx special commands. For example: XGpio_Initialize(&GpioDipSwitch,XPAR_DIPSWS_4BIT_DEVICE_ID); // set the GpioDipSwitch valueXGpio_Initialize(&GpioDipSwitch,XPAR_DIPSWS_4BIT_DEVICE_ID); // set the GpioDipSwitch value XGpio_SetDataDirection(&GpioDipSwitch, 1, 0x1);// set the GpioDipSwitch as an inputXGpio_SetDataDirection(&GpioDipSwitch, 1, 0x1);// set the GpioDipSwitch as an input FA_mWriteSlaveReg0(XPAR_FA_0_BASEADDR, Temp); //writing data to the unitFA_mWriteSlaveReg0(XPAR_FA_0_BASEADDR, Temp); //writing data to the unit Fa_stat=FA_mReadSlaveReg0(XPAR_FA_0_BASEADDR); //reading data from the unitFa_stat=FA_mReadSlaveReg0(XPAR_FA_0_BASEADDR); //reading data from the unit XGpio_DiscreteWrite(&GpioOutput, 1, dip_stat); //writing to the ledsXGpio_DiscreteWrite(&GpioOutput, 1, dip_stat); //writing to the leds We wrote the C code using the Xilinx special commands.We wrote the C code using the Xilinx special commands. For example: XGpio_Initialize(&GpioDipSwitch,XPAR_DIPSWS_4BIT_DEVICE_ID); // set the GpioDipSwitch valueXGpio_Initialize(&GpioDipSwitch,XPAR_DIPSWS_4BIT_DEVICE_ID); // set the GpioDipSwitch value XGpio_SetDataDirection(&GpioDipSwitch, 1, 0x1);// set the GpioDipSwitch as an inputXGpio_SetDataDirection(&GpioDipSwitch, 1, 0x1);// set the GpioDipSwitch as an input FA_mWriteSlaveReg0(XPAR_FA_0_BASEADDR, Temp); //writing data to the unitFA_mWriteSlaveReg0(XPAR_FA_0_BASEADDR, Temp); //writing data to the unit Fa_stat=FA_mReadSlaveReg0(XPAR_FA_0_BASEADDR); //reading data from the unitFa_stat=FA_mReadSlaveReg0(XPAR_FA_0_BASEADDR); //reading data from the unit XGpio_DiscreteWrite(&GpioOutput, 1, dip_stat); //writing to the ledsXGpio_DiscreteWrite(&GpioOutput, 1, dip_stat); //writing to the leds

Inserted a ChipScope probe into the design. Problems : RTL optimization problem. When we synthesized our design with EDK, the ISE tool automatically ran its optimizations, and “optimized away” some of our signals, for efficiency. This phenomena was very problematic on our behalf because we wanted students to be able to see all the design signals. Signals naming problem. After the synthesis stage, some of our original signals received different names, as a part of the synthesis process. It was very difficult to distinguish which were the relevant signals. Problems : RTL optimization problem. When we synthesized our design with EDK, the ISE tool automatically ran its optimizations, and “optimized away” some of our signals, for efficiency. This phenomena was very problematic on our behalf because we wanted students to be able to see all the design signals. Signals naming problem. After the synthesis stage, some of our original signals received different names, as a part of the synthesis process. It was very difficult to distinguish which were the relevant signals.

Inserted a ChipScope probe into the design Signals naming problem. ( example )

Solution for the post synthesis naming/optimizing problem There were several stages for the solution :There were several stages for the solution : –First we synthesized our periphery in an independent way using ISE. –We learned which libraries are needed in order for us to be able to “dive into” modules in our design. –We found a method of synthesis which preserves the signal names. –We then transferred this knowledge to the EDK environment, and found a method of synthesizing our design with command line instructions for the ISE. –Finally the synthesized peripheries kept their original names and we are now able to monitor all signals of our design. –The signals were also not optimized away There were several stages for the solution :There were several stages for the solution : –First we synthesized our periphery in an independent way using ISE. –We learned which libraries are needed in order for us to be able to “dive into” modules in our design. –We found a method of synthesis which preserves the signal names. –We then transferred this knowledge to the EDK environment, and found a method of synthesizing our design with command line instructions for the ISE. –Finally the synthesized peripheries kept their original names and we are now able to monitor all signals of our design. –The signals were also not optimized away

Dynamic validation using the chip scope We picked a collection of signals which are crucial for the observations the students are to make at the experiment.We picked a collection of signals which are crucial for the observations the students are to make at the experiment.

Designing The New Dynamic System Experiment.Designing The New Dynamic System Experiment. Building The Experiment Files ( EDK ).Building The Experiment Files ( EDK ). Simulating The Complete Experiment.Simulating The Complete Experiment. Building an Experiment Folio.Building an Experiment Folio. –Pre-experiment learning kit ( includes preparation questions ). –Preparing an experiment booklet. –Preparing a station startup script. Designing The New Dynamic System Experiment.Designing The New Dynamic System Experiment. Building The Experiment Files ( EDK ).Building The Experiment Files ( EDK ). Simulating The Complete Experiment.Simulating The Complete Experiment. Building an Experiment Folio.Building an Experiment Folio. –Pre-experiment learning kit ( includes preparation questions ). –Preparing an experiment booklet. –Preparing a station startup script. PART B: Goals

Our plan for the second part of the project is to implement several different peripheries like the one we implemented here. Each periphery will have several different problems.Our plan for the second part of the project is to implement several different peripheries like the one we implemented here. Each periphery will have several different problems. The students will have to detect the problems with the chip scope and fix them by selecting a different configuration for the periphery.The students will have to detect the problems with the chip scope and fix them by selecting a different configuration for the periphery. Our plan for the second part of the project is to implement several different peripheries like the one we implemented here. Each periphery will have several different problems.Our plan for the second part of the project is to implement several different peripheries like the one we implemented here. Each periphery will have several different problems. The students will have to detect the problems with the chip scope and fix them by selecting a different configuration for the periphery.The students will have to detect the problems with the chip scope and fix them by selecting a different configuration for the periphery. PART B: The Experiment

Several Ideas for Peripheries A Led lighting design.A Led lighting design. Full adder.Full adder. 4 bit counter.4 bit counter. Stop light designStop light design Etc…(more are optional)Etc…(more are optional) In each periphery we will plant several hardware and software problems. Which will be implemented similar to the way we have implemented them with our FA.In each periphery we will plant several hardware and software problems. Which will be implemented similar to the way we have implemented them with our FA. A Led lighting design.A Led lighting design. Full adder.Full adder. 4 bit counter.4 bit counter. Stop light designStop light design Etc…(more are optional)Etc…(more are optional) In each periphery we will plant several hardware and software problems. Which will be implemented similar to the way we have implemented them with our FA.In each periphery we will plant several hardware and software problems. Which will be implemented similar to the way we have implemented them with our FA.

QUESTIONSQUESTIONS

GOOD VERSION BACK

LOGIC CHANGE BACK

CARRY PROBLEM BACK

3 BIT ADDER BACK

LOGIC PROBLEM BACK

REVESED FF PROBLEM BACK

FULL ADDER GOOD BACK

FULL ADDER CARRY BACK

REVERSED FF BACK

FA LOGIC PROBLEM BACK

REVERSED FF PROBLEM BACK

CARRY PROBLEM BACK