Hub The Only Co-Simulation Tool of Its Kind on the Market The Only Co-Simulation Tool of Its Kind on the Market.

Slides:



Advertisements
Similar presentations
HDL Programming Fundamentals
Advertisements

Verilog HDL -Introduction
Chapter 15:Introduction to Verilog Testbenches Objectives In this section,you will learn about designing a testbench: Creating clocks Including files Strategic.
Verilog Fundamentals Shubham Singh Junior Undergrad. Electrical Engineering.
Simulation executable (simv)
Verilog Overview. University of Jordan Computer Engineering Department CPE 439: Computer Design Lab.
Verilog Intro: Part 1.
CSE 201 Computer Logic Design * * * * * * * Verilog Modeling
Give qualifications of instructors: DAP
CSE 341 Verilog HDL An Introduction. Hardware Specification Languages Verilog  Similar syntax to C  Commonly used in  Industry (USA & Japan) VHDL 
How to get a Circuit in verilog converted to hspice, connected to the micron package models, and simulating in hspice and hsimplus.
1 Verilog Digital Computer Logic Kashif Bashir WWW: http//:
Slide 1 7. Verilog: Combinational always statements. VHDL: Combinational Processes: To avoid (I.E. DO NOT What in your HDL code?) Cases that generate Synthesis.
L18 – VHDL for other counters and controllers. Other counters  More examples Gray Code counter Controlled counters  Up down counter  Ref: text Unit.
CS 151 Digital Systems Design Lecture 37 Register Transfer Level
GALAXY Project Final project review IHP, February 4th 2011 Tools Demonstration Dr Lilian Janin, Dr Doug Edwards - University of Manchester.
Pulse-Width Modulated DAC
Verilog Lab This presentation includes some material that is selected from BUCKNELL VERILOG HANDBOOK. Instructor: Dr. Charles Liu Prepared by John Ren.
Digital System Design Verilog ® HDL Maziar Goudarzi.
University of Jordan Computer Engineering Department CPE 439: Computer Design Lab.
Guest Lecture by Ben Magstadt CprE 281: Digital Logic.
Guest Lecture by Ben Magstadt CprE 281: Digital Logic.
1 VERILOG Fundamentals Workshop סמסטר א ' תשע " ה מרצה : משה דורון הפקולטה להנדסה Workshop Objectives: Gain basic understanding of the essential concepts.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
Introduction to FPGA AVI SINGH. Prerequisites Digital Circuit Design - Logic Gates, FlipFlops, Counters, Mux-Demux Familiarity with a procedural programming.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
The Layered Protocol Wrappers 1 Florian Braun, Henry Fu The Layered Protocol Wrappers: A Solution to Streamline Networking Functions to Process ATM Cells,
1 Workshop Topics - Outline Workshop 1 - Introduction Workshop 2 - module instantiation Workshop 3 - Lexical conventions Workshop 4 - Value Logic System.
© 2003 Xilinx, Inc. All Rights Reserved For Academic Use Only Xilinx Design Flow FPGA Design Flow Workshop.
Introduction Verilog is a HARDWARE DESCRIPTION LANGUAGE (HDL) A hardware description language is a language or means used to describe or model a digital.
SoC Verification HW #2 TA: Wei-Ting Tu Assignment: 04/12/06
ECE 551 Digital System Design & Synthesis Fall 2011 Midterm Exam Overview.
1 An Update on Verilog Ξ – Computer Architecture Lab 28/06/2005 Kypros Constantinides.
Language Concepts Ver 1.1, Copyright 1997 TS, Inc. VHDL L a n g u a g e C o n c e p t s Page 1.
Module 2.1 Gate-Level/Structural Modeling UNIT 2: Modeling in Verilog.
Anurag Dwivedi. Basic Block - Gates Gates -> Flip Flops.
Introductory project. Development systems Design Entry –Foundation ISE –Third party tools Mentor Graphics: FPGA Advantage Celoxica: DK Design Suite Design.
Electrical and Computer Engineering University of Cyprus LAB 1: VHDL.
Introduction to VLSI Design – Lec01. Chapter 1 Introduction to VLSI Design Lecture # 11 High Desecration Language- Based Design.
Slide 1 2. Verilog Elements. Slide 2 Why (V)HDL? (VHDL, Verilog etc.), Karen Parnell, Nick Mehta, “Programmable Logic Design Quick Start Handbook”, Xilinx.
© 2005 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU HDL Co-Simulation.
Hardware languages "Programming"-language for modelling of (digital) hardware 1 Two main languages: VHDL (Very High Speed Integrated Circuit Hardware Description.
SVA Encapsulation in UVM enabling phase and configuration aware assertions by Mark Litterick Verification Consultant Verilab GmbH, Munich, Germany.
CSCE 211: Digital Logic Design Chin-Tser Huang University of South Carolina.
CSCI-365 Computer Organization Lecture Note: Some slides and/or pictures in the following are adapted from: Computer Organization and Design, Patterson.
Introduction to ASIC flow and Verilog HDL
Verilog tutorial Hong-Hui Chen 05/17/2002 VLSI Design Course.
Teaching Digital Logic courses with Altera Technology
IAY 0600 Digital Systems Design Event-Driven Simulation VHDL Discussion Alexander Sudnitson Tallinn University of Technology.
CprE 281: Verilog Tutorial Ben Magstadt – Master’s Student Electrical Engineering.
1 University of Jordan Computer Engineering Department CPE 439: Computer Design Lab.
IAY 0600 Digital Systems Design VHDL discussion Structural style Modular design and hierarchy Part 1 Alexander Sudnitson Tallinn University of Technology.
Structural style Modular design and hierarchy Part 1
Adapted from Krste Asanovic
TODAY’S OUTLINE Introduction to Verilog Verilog coding format
Reg and Wire:.
EMT 351/4 DIGITAL IC DESIGN Week # Synthesis of Sequential Logic 10.
ECE 551: Digital System Design & Synthesis
Structural style Modular design and hierarchy Part 1
Topics The logic design process..
Introduction to Verilog
Structural style Modular design and hierarchy Part 1
Computer Architecture and Design Lecture 6
Test Fixture (Testbench)
Xilinx/Model Technology Powerful FPGA Verification Solution
The Verilog Hardware Description Language
THE ECE 554 XILINX DESIGN PROCESS
THE ECE 554 XILINX DESIGN PROCESS
Øyvind Hagen Senior Hardware Developer
System Controller Approach
Presentation transcript:

Hub The Only Co-Simulation Tool of Its Kind on the Market The Only Co-Simulation Tool of Its Kind on the Market

Hub Perform Co-Simulation of Designs Easily Perform Co-Simulation of Designs Easily Ensure Parts Work Together Before Silicon Ensure Parts Work Together Before Silicon

Introduction Why to do Co-Simulation? Two verification environments use different simulators ? ? VCS-based RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs … Modelsim-based RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs … VCS-based RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs … VCSMX-based RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs …

Introduction Why to do Co-Simulation? Two verification environments are too complex to be put under one testbench. ? Very Complex Env RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs … Very Complex Env RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs …

Introduction Why to do Co-Simulation? Two environments together exceed computer memory size Could not be simulated on 4G machine. Solution: Use 8G machine or Co-Simulate on two 4G machines 2.5G Model RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs … 2.5G Model RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs …

Introduction Why to do Co-Simulation? One design is Verilog, the other is VHDL ? Not all simulators perform mixed Verilog-VHDL simulation. Solution: Use Co-Simulation tool. Verilog RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs … VHDL RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs …

Introduction Why to do Co-Simulation? Two designs are physically in distant locations. ? Solution: Co-Simulate over the Internet. Do not have to share IPs. Only interface information is shared. In Tokyo, Japan RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs … In Sunnyvale, CA RTL/Gate HDL Design Testbench Monitors Checkers Drivers BFMs …

Introduction Hub allows the simulated models to communicate over the network or on a single computer

Hub Overview Hub has three main components : hub executable Runs on the network. Communicates with the simulators. hub_ifc shared library Used by the simulators to communicate with hub. Verilog hook-up module (optional, but recommended) Instantiated by both simulated models. Has interface signals. Has PLI call to communicate with hub.

Hub Overview hub Communicates with the simulators. hub_ifc shared library Used by the simulators to communicate with hub. hub comp2comp1 hub_ifc hooku p

Hub Overview Verilog hook-up module hub comp2comp1 hub_if c hooku p module hookup(clk, reset, Q, QQ); input clk, reset; input [3:0] Q; output [3: 0] QQ; reg [3:0] QQ; clk) begin $hub_event_comp1; end endmodule module hookup(clk, reset, Q, QQ); input clk, reset; input [3:0] Q; output [3: 0] QQ; reg [3:0] QQ; clk) begin $hub_event_comp2; end endmodule

Hub Overview Verilog Interface Signals Output Signals Can be from any place in the Verilog design hierarchy. Must be an input to a module. It is recommended to bring all the signals to be transmitted to the hook-up module. Input Signals Must be declared as reg somewhere. It is recommended to declare them in the hook-up module and make them outputs of the hook-up module.

Hub Overview Hook-up modules in both simulated models Network Comp2 hookup Comp1 hookup comp1_out1 comp1_out2 reg comp2_in1 reg comp2_in2 comp2_out1comp1_in1 reg top

Hub Overview Interface files (comp1.ifc and comp2.ifc) Hub and hub interfaces of the simulated models need information about the interface signals. The user must put comp1.ifc and comp2.ifc in the run directory. The tool does complete check of the ifc files before run. Checks input/output Checks signal path Checks signal width Any errors are reported in parse_ifc_err.out in the run directory comp1.ifc comp2.ifc output top.hookup.comp1_out1 8 output top.hookup.comp1_out2 1 input top.hookup.comp1_in1 4 input top.hookup.comp2_in1 8 input top.hookup.comp2_in2 1 output top.hookup.comp2_out1 4

Hub Overview Host file - hub.host The simulated models have to be aware of the IP address of the Hub computer. Assign two available ports for Hub to communicate with the simulated models. The user must put the host file in the run directory. hub.host ip comp1_port 9733 comp2_port 9734

Hub Overview Hub configuration file – hub.cfg Specify hub timeout before it is connected to the simulated models in sec (for example, 60) Specify hub timeout after it is connected to the simulated models in sec (for example, 10) The user must put hub.cfg in the run directory. hub.cfg timeout_before_connect 60 timeout_after_connect 10

Tool Demonstration Setup A Linux LAN consists of two machines Two Linux computers are connected through a router. The machines are named host1 and host2. The machines have IP address and SLURM (Simple Linux Utility for Resource Management) We use SLURM to submit Hub and both simulation models to any machine in the LAN. The two communicating Verilog designs are called Counter and Follower Counter is a four bit counter with an active low reset. Four bit Counter output and the reset are transmitted to Follower. Follower implements another counter that increments only when the Counter output reaches 4bf. Follower resets when reset is asserted. The output of the Follower is sent back to the counter model.

Tool Demonstration Setup The Verilog simulator used on this project is Icarus Verilog. Free IEEE compliant Verilog simulator developed by Stephen Williams Shell scripts to automatically compile both Hub and Verilog designs are created.