Switch Fabric Team Members Xuan Bao Jacob Cox Bryan Fleming Wenzhong Wu 20 February 2009.

Slides:



Advertisements
Similar presentations
11-1 ECE 424 Design of Microprocessor-Based Systems Haibo Wang ECE Department Southern Illinois University Carbondale, IL I/O System Design.
Advertisements

Pipeline transfer testing. The purpose of pipeline transfer increase the bandwidth for synchronous slave peripherals that require several cycles to return.
Arbitrary Waveform Discussion 5.5 Example 34.
Ring Counter Discussion D5.3 Example 32. Ring Counter if rising_edge(CLK) then for i in 0 to 2 loop s(i)
VHDL revision 15a1 VHDL revision. VHDL revision 15a2 Q1 A clocked 4-to-2-bit encoder circuit (with synchronous reset) has the following interfaces: RESET:
Input-output and Communication Prof. Sin-Min Lee Department of Computer Science.
6/27/20061 Sequence Detectors Lecture Notes – Lab 5 Sequence detection is the act of recognizing a predefined series of inputs A sequence detector is a.
6/12/20151 Sequence Detectors Lecture Notes – Lab 4 Sequence detection is the act of recognizing a predefined series of inputs A sequence detector is a.
Project Check-off 2 UART Design Jeffrey Tsai. Project Thus Far FIFO SRAM UART IN UART OUT Main Control FSM Collision Audio In interface Audio Out interface.
Finite State Machines Discussion D7.1 Mealy and Moore Machines.
Development System using Altium Designer Supervisor : Ina Rivkin Performed by: Fared Ghanayim Jihad Zahdeh Technion – Israel Institute of Technology Department.
Sequencing and Control Mano and Kime Sections 8-1 – 8-7.
3/13/20081 Lab 6 Solution Part 1: Design a sequence detector for the sequence “00101” Part 2: a b See sm1.vhdSee sm2.vhd See seq1.vhd.
Algorithmic State Machine (ASM) Charts
George Mason University ECE 448 – FPGA and ASIC Design with VHDL Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts,
Slide 1SCI Basics SCI Basics Hugo Kohmann. Slide 2SCI Basics What is SCI  The SCI standard ANSI/IEEE defines a point-to-point interface and.
ECE 448: Spring 12 Lab 4 – Part 2 Finite State Machines Basys2 FPGA Board.
Lecture #5 In this lecture we will introduce the sequential circuits.
Khaled A. Al-Utaibi  8086 Pinout & Pin Functions  Minimum & Maximum Mode Operations  Microcomputer System Design  Minimum Mode.
Spring EE 437 Lillevik 437s06-l2 University of Portland School of Engineering Advanced Computer Architecture Lecture 2 NSD with MUX and ROM Class.
LAB 9 Finite State Machine (FSM) Ui Luu Glendale Community College Bassam Matar Chandler-Gilbert Community College.
Universal Synchronous/Asynchronous Receiver/Transmitter (USART)
Unit 4 Design and Synthesis of Datapath Controllers
The Layered Protocol Wrappers 1 Florian Braun, Henry Fu The Layered Protocol Wrappers: A Solution to Streamline Networking Functions to Process ATM Cells,
Chapter 14 Introduction to Microprocessors. 2 Microcomputer A self-contained computer system that consists of CPU (central processing unit), memory (RAM.
ECE Department: University of Massachusetts, Amherst ECE 354 Lab 5: Data Compression.
Team Members Xuan Bao Jacob Cox Bryan Fleming Wenzhong Wu 20 February 2009.
BYU ECEn 320 Lab 4 UART Transmitter. BYU ECEn 320 UART Transmimtter Specification VGA Serial A1 Expansion Connector PS2 A2 Expansion Connector B1 Expansion.
 8251A is a USART (Universal Synchronous Asynchronous Receiver Transmitter) for serial data communication.  Programmable peripheral designed for synchronous.
8279 KEYBOARD AND DISPLAY INTERFACING
ENG241 Digital Design Week #8 Registers and Counters.
Lab 05 Sen Ma.
Performed by Greenberg Oleg Kichin Dima Winter 2010 Supervised by Moshe Mishali Inna Rivkin.
Reconfigurable Computing - VHDL - Types John Morris Chung-Ang University The University of Auckland.
Introduction to VHDL Simulation … Synthesis …. The digital design process… Initial specification Block diagram Final product Circuit equations Logic design.
80386DX functional Block Diagram PIN Description Register set Flags Physical address space Data types.
Datapath - performs data transfer and processing operations The control unit sends: – Control signals – Control outputs The control unit receives: – External.
8279 KEYBOARD AND DISPLAY INTERFACING
VHDL for Sequential Logic
Algorithmic State Machines Sorting Signed & Unsigned Data Types
Slide 1 3.VHDL/Verilog Description Elements. Slide 2 To create a digital component, we start with…? The component’s interface signals Defined in MODULE.
1 ECE 545 – Introduction to VHDL Algorithmic State Machines Sorting Example ECE 656 Lecture 8.
ECE DIGITAL LOGIC LECTURE 20: REGISTERS AND COUNTERS Assistant Prof. Fareena Saqib Florida Institute of Technology Fall 2015, 11/19/2015.
ECE DIGITAL LOGIC LECTURE 21: FINITE STATE MACHINE Assistant Prof. Fareena Saqib Florida Institute of Technology Fall 2015, 11/24/2015.
CS/CoE 536 : Lockwood 1 CS/CoE 536 Reconfigurable System On Chip Design Lecture 11 : Priority and Per-Flow Queuing in Machine Problem 3 (Revision 2) Washington.
1G eth UDP IP stack SIMPLIFIED IMPLEMENTATION FROM THE FIX.QRL STABLES (CONTRIBUTOR – PETER FALL) V2.0.
8251 USART.
Algorithmic State Machine (ASM) Charts: VHDL Code & Timing Diagrams
1 Introduction to Engineering Spring 2007 Lecture 19: Digital Tools 3.
UART Jin-Fu Li. 2 EE613 VLSI DesignNational Central University Introduction UART (modem)  Universal asynchronous receiver and transmitter Data format.
Sequential statements (1) process
Serial mode of data transfer
Main Project : Simple Processor Mini-Project : Vending Machine Memory
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code.
Project Custom Designed Integrated Circuits
Revision Name __________ Student number______
RLE Compression using Verilog and Verification using Functional Simulation 3/8/2017.
Algorithmic State Machine (ASM) Charts: VHDL Code & Timing Diagrams
Serial Communication Interface: Using 8251
CPRE 583 Reconfigurable Computing
Programmable Peripheral Interface
Counting the Score - BBC micro:bit Quiz Counter
Figure 8.1. The general form of a sequential circuit.
Lecture 13 PicoBlaze I/O & Interrupt Interface
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code.
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL code ECE 448 – FPGA and ASIC Design.
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
디 지 털 시 스 템 설 계 UP2 Kit를 이용한 카운터 설계
(Sequential-Circuit Building Blocks)
Advanced Computer Architecture Lecture 3
Presentation transcript:

Switch Fabric Team Members Xuan Bao Jacob Cox Bryan Fleming Wenzhong Wu 20 February 2009

Switch Fabric Receive Handle Block Diagram

Switch Fabric Receive Handle Interface Interfaces to Receiver Interface: Output: Data_Read: out std_logic; --read enable signal to Rcv FIFO, handshake Length_Read: out std_logic; -- read enable signal to Rcv length FIFO Packet_Finished: out std_logic; handshake --packet end signal Packet_ Error: out std_logic; --packet error signal Input: Data: in std_logic_vector(7 downto 0); --data bus Packet_Length: in std_logic_vector(11 downto 0); --packet length bus and validsignalbus Connection_Ready: in std_logic_vector; --input handshake Check_Counter: in std_logic_vector(11 downto 0); --Rcv’s counter value, for protecting from counter error Input_Port_Number: in std_logic_vector(1 downto 0); Interfaces to Data FIFO: Output: Data_Output: out std_logic_vector(7 downto 0); --prepare data for transmit side

Switch Fabric Receive Handle Interface Data_wrreq: out std_logic; --write enable to data FIFO Input: FIFO_Empty: in std_logic; --1 port in from FIFO Interfaces to Address FIFO: Output: Address: out std_logic_vector(7 downto 0); --output to address FIFO Address_InputPortNumber: out std_logic_vector(1 downto 0); --expose input port number to address lookup Address_wrreq: out std_logic --write enable to address FIFO Input: Address_FIFO_Empty: in std_logic; Interfaces to Length FIFO Output: Packet_Length_Output: out std_logic_vector(10 downto 0); --expose length information to transmitter handle Length Wrreq: out std_logic;

Switch Fabric Receive Handle 8 Function

Switch Fabric Receive Handle 8 State Machine

Switch Fabric Receive Handle 8 Simulation Results

Switch Fabric Transmit Interface SF_fifo2xmt_interface ODL_empty[2] ODL_empty[1] ODL_empty[0] Clk xmt_dwtreq xmt_lwtreq i_O_FIFO rd_D_FIFOi_O_FIFOi_L_FIFO xmt_wordsused i_D_FIFOo_D_xmt i_L_FIFOo_L_xmt reset TRANSMIT PORTSTRANSMIT PORTS 12 8

Xmt Interface to Xmt SF_fifo2xmt_interface ODL_empty[2] ODL_empty[1] ODL_empty[0] Clk xmt_dwtreq xmt_lwtreq i_O_FIFO rd_D_FIFOi_O_FIFOi_L_FIFO xmt_wordsused i_D_FIFOo_D_xmt i_L_FIFOo_L_xmt reset XMT Data Fifo(0) XMT Length Fifo(0) XMT Length Fifo(1) XMT Length Fifo(2) XMT Length Fifo(3) XMT Data Fifo(3) XMT Data Fifo(2) XMT Data Fifo(1) 12 8

Switch Fabric Transmit Interface Data Write Request Drop Packets Final Data Packet Write Length

SF_ODLFifo_XmtInterface_Xmt0to3 Data Enters Data_FIFO Write Requests to the Transmit FIFOs Number of words already in the Transmit FIFO

SF_fifo2xmt_interface Clk xmt_dwtreq xmt_lwtreq i_O_FIFO xmt_wordsused i_D_FIFOo_D_xmt i_L_FIFO o_L_xmt reset rd_D_FIFO rd_O_FIFO rd_L_FIFO SF_FIFO_monitor ODL_empty[2..0] Clk xfer_D_req Send_L i_O_FIFO o_read_D o_read_L i_L_FIFO xfer_L_req reset o_read_O o_L_FIFO 8 CounterC i_count [11-0] Clk o_Snd_L i_read_L reset o_count[11-0] ODL_empty[2] ODL_empty[1] ODL_empty[0] 12 & xmt_port_monitor Clk reset SF_PacketComing xmt_wordsused 12 SF_PacketLength SF_PacketFinished SF_dwtreqSF_lwtreqxmt_lwtreqxmt_dwtreq counter_fifo_monitor_merger

SF_fifo2xmt_interface Merger of FIFO_Monitor, Counter, and Port_Monitors results in successful initiation, countdown, and termination of data transfer. Fifo Empty Signals

CounterC o_count[11-0] i_count [11-0] “x000” Clk o_Snd_L s_snd_L <= '0‘ s_en <=’0’ reset = ‘0' i_read_L = ‘1‘ & reset =‘0’ F s_snd_L <= '0‘ s_en <=’1’ T T F s_count =i_count- 1 & reset =‘0’ T s_snd_L <= ‘1‘ s_en <=’1’ s_count = i_count s_count [11-0] F s_snd_L reset s_en i_read_L

SF_FIFO_monitor ODL_FIFO = “000” Send_L = ‘1’ s_i_O_FIFO = “000 to 111” reset = ‘1’

Idle ODL_FIFO =0000 Reset =0 F T T F Get_Length F Reset =0 T Send_Data F Reset =0 T NS_FIFO<=0000 NS_length<=x0000 s_o_read_L<=0 s_o_read_O<=0 o_read_D<=0 xfer_D_req<=0000 xfer_L_req<=0000 Get_Length Idle NS_FIFO<=i_O_FIFO NS_length<=i_L_FIFO s_o_read_L<=1 s_o_read_O<=1 o_read_D<=0 xfer_D_req<=0000 xfer_L_req<=0000 Send_L =0 F T s_o_read_L<=1 s_o_read_O<=1 o_read_D<=0 Send_Data xfer_D_req<=0001 xfer__L_req<=0001 xfer_D_req<=1110 xfer_L_req<=1110 xfer_D_req<=0010 xfer_L_req<=0010 xfer_D_req<=0100 xfer_L_req<=0100 xfer_D_req<=1000 xfer_L_req<=1000 xfer_D_req<=1101 xfer_L_req<=1101 xfer_D_req<=1110 xfer_L_req<=1110 xfer_D_req<=1011 xfer_L_req<=1011 xfer_D_req<=0000 xfer_L_req<=0000 CS_FIFO=0000 CS_FIFO=other ASM of FIFO_Monitor FSM

SF_FIFO_monitor Read Signals Asserted for Output and Length FIFOs Read Signal Asserted for Data FIFO on the next clock Write signals asserted for Transmitters All FIFOs have Data = 0 Send Length indicates a count is complete

counter_fifo_monitor_merger

Switch Fabric Transmit Interface Write Signals Asserted two clocks after all FIFOs have data

Output DestinationPacket LengthFifo Empty Signals Fifo Read Signals Length Write Signals Terminate