FPGA, CPLD, and ASIC solutions from Altera
  • Download Center
  • Literature
Sign in/register
myAltera Account
Welcome
  •   myAltera
  •   Logout
  • Products
    • Devices
    • Design Software
    • Intellectual Property
    • Development Kits/Cables
    • Design & Support Services
    • Literature
  • End Markets
    • Automotive
    • Broadcast
    • Computer & Storage
    • Consumer
    • Industrial
    • Medical
    • Military
    • Test & Measurement
    • Wireless
    • Wireline
  • Technology
    • DSP
    • External Memory
    • Embedded Processing
    • Transceivers
    • Parallel I/O
    • Signal Integrity
    • System Integration
  • Training
    • Training Courses
    • University Program
    • Webcasts & Videos
    • Demonstrations
    • Events Calendar
  • Support
    • Design & Support Resources
    • Knowledge Database
    • Devices
    • Design Software
    • Intellectual Property
    • Development Kits/Cables
    • Design Examples
    • Downloads
    • User Communities/Forums
    • mySupport
  • About Altera
    • About Us
    • Environmental
    • Customer Successes
    • Partners
    • Newsroom
    • Investor Relations
    • Jobs
    • Contact Us
  • Buy Online
    • Devices
    • Design Software
    • Development & Education Kits
    • Cables & Programming Hardware
    • Intellectual Property
  • Entire Site
  • Part Number
  • Knowledge Database
  • Support & Technical Docs
  • Forums & Wiki
Username:  
Password:  
 
Forgot my username or password
Don't have myAltera account? Register Now.
Enter your email address:

Verilog HDL: High-Speed Differential I/O Capability

Home > Support > Design Examples > Verilog HDL > Verilog HDL: High-Speed Differential I/O Capability

The Quartus® II software high-speed differential I/O design example consists of three megafunctions:

  • LVDS receiver (altlvds_rx)
  • Multiplier (lpm_mult)
  • LVDS transmitter (altlvds_tx).

The LVDS receiver, multiplier, and LVDS transmitter modules are created using the Quartus II software MegaWizard® Plug-In. They are connected as shown in Figure 1, which illustrates the performance of:

  • Converting 840 megabits per second (Mbps) serial data into 8-bit parallel data using altlvds_rx
  • Multiplication of the two 8-bit parallel data using lpm_mult
  • Converting the parallel data coming out of the multiplier into serial data using altlvds_tx

Figure 1. Diff_io_top Top-Level Block Diagram

Figure 1. Diff_io_top Top-Level Block Diagram

The multiplier will be implemented in a dedicated digital signal processing (DSP) block within the Altera® Stratix™ device. The motive behind this example is to show the data conversion. A test bench is created in Verilog and simulated using the ModelSim® tool.

Download the files used in this example:

  • diff_io_top.zip
  • README file

The use of this design is governed by, and subject to, the terms and conditions of the Altera Hardware Reference Design License Agreement.

Table 1 lists the files included in the download. Table 2 lists the ports and gives a description for each.

Table 1. Files included in diff_io_top.zip
Directory File Description
src diff_io_top.v Top-level design file that instantiates the receiver, multiplier, and transmitter
lvds_rx.v LVDS receiver generated by the MegaWizard Plug-In
mult.v 8-bit multiplier generated by the MegaWizard Plug-In
lvds_tx.v LVDS transmitter generated by the MegaWizard Plug-In
sim testbench.y Instantiates the top-level module and consists of the test vectors
diff_io_top.vo Quartus II software-generated Verilog netlist to be used with the ModelSim tool
diff_io_top.sdo Quartus II software-generated SDF timing file
comp_altera_lib.do Script to compile the Stratix library
comp_gate.do Script to compile the testbench and the gate-level netlist
gate_sim.do Script to run the design in the ModelSim tool
Stratix library ModelSim compiled models

Table 2. High-Speed Differential I/O Design Example Port Listing
Port Name Type Description
rx_in[0] Input 1-bit unsigned serial input binary data
rx_in[1] Input 1-bit unsigned serial input binary data
rx_inclock Input Input clock with frequency of 105 MHz
tx_out[0] Output 1-bit unsigned serial output binary data
tx_out[1] Output 1-bit unsigned serial output binary data
tx_outclock Output Output clock from phase-locked loop (PLL) with frequency of 105 MHz

Simulating the Design

  1. Invoke the ModelSim 5.6c tool.
  2. Change directory to the location where the simulation files are located.
  3. Source the script gate_sim.do by using the command: VSIM > do gate_sim.do

Result of multiplication appears after 180 ns.

Related Links

For more information on using this example in your project, go to:

  • The Mentor Graphics ModelSim Support chapter of volume 3 of the Quartus II handbook

Design Examples Disclaimer

These design examples may only be used within Altera Corporation devices and remain the property of Altera. They are being provided on an “as-is” basis and as an accommodation; therefore, all warranties, representations, or guarantees of any kind (whether express, implied, or statutory) including, without limitation, warranties of merchantability, non-infringement, or fitness for a particular purpose, are specifically disclaimed. Altera expressly does not recommend, suggest, or require that these examples be used in combination with any other product not provided by Altera.

Rate This Page


  • Products
    • MAX/MAX II
    • Stratix/Stratix GX
    • Nios II
  • Functionality
    • Arithmetic
    • External Memory Interfaces
    • On-Chip Memory
    • Bus & I/O Functions
    • Logic
    • Interfaces & Peripherals
    • DSP
    • Communications
    • PLL & Clocking
  • Design Entry
    • Quartus II
    • Tcl
    • VHDL
    • Verilog HDL
    • C Code
    • DSP Builder
    • TimeQuest
    • On-Chip Debugging
      • SignalTap II
  • Simulation Tools
    • Mentor Graphics ModelSim
    • Cadence NCsim
    • Synopsys VCS
  • Legacy Examples
    • Graphic Editor
    • AHDL
    Please give us feedback
    Products | End Markets | Technology | Training | Support | About Altera | Buy Online
    Jobs | Investor Relations | Contact Us | Site Map | Privacy | Legal Notice
    Copyright © 1995-2010 Altera Corporation. All Rights Reserved.
    Altera Forum
    Altera
    Forum
    Twitter
    Twitter
    RSS
    RSS
    Facebook
    Facebook
    Flickr
    Flickr
    YouTube
    YouTube
    Email Updates
    Email
    Updates