[ Order This Book ]


More Info:
Table of Contents

Rapid Prototyping of Digital Systems : A Tutorial Approach
Author: Hamblen, James O. / Furman, Michael D.

Cover: Hard cover
Pages: 245
List Price: $75.00
Published by Kluwer Academic Publisher
Date Published: 08/1999
ISBN: 0792386043


Table of Contents

  Tutorial I: The 15 Minute Design                 2  
      Design Entry using the Graphic Editor          6  
      Compiling the Design                           9  
      Simulation of the Design                       10 
      Downloading Your Design to the UP 1 Board      12 
      The 10 Minute VHDL Entry Tutorial              14 
      Compiling the VHDL Design                      17 
      The 10 Minute Verilog Entry Tutorial           17 
      Compiling the Verilog Design                   21 
      Timing Analysis                                22 
      The Floorplan Editor                           23 
      Symbols and Hierarchy                          24 
      Functional Simulation                          24 
      For additional information                     24 
      Laboratory Exercises                           25 
    The Altera UP 1 CPLD Board                       30 
      Programming Jumpers                            31 
      MAX 7000 Device and UP 1 I/O Features          31 
      MAX and FLEX Seven-segment LED Displays        31 
      FLEX 10K Device and UP 1 I/O Features          34 
      Obtaining a UP 1 Board and Power Supply        36 
    Programmable Logic Technology                    38 
      CPLDs and FPGAs                                40 
      Altera MAX 7000S Architecture -- A Product     41 
      Term CPLD Device
      Altera FLEX 10K Architecture -- A Look-Up      42 
      Table CPLD Device
      Xilinx 4000 Architecture -- A Look-Up Table    46 
      FPGA Device
      Computer Aided Design Tools for                48 
      Programmable Logic
      Applications of FPLDs                          48 
      For Additional Information                     49 
      Laboratory Exercises                           49 
    Tutorial II: Sequential Design and Hierarchy     52 
      Install the Tutorial Files and UP1 core        52 
      Library
      Open the Tutor2 Schematic                      52 
      Browse the Hierarchy                           54 
      Using Buses in a Schematic                     55 
      Testing the Pushbutton Counter and Displays    56 
      Testing the Initial Design on the UP 1         57 
      Board.
      Fixing the Switch Contact Bounce Problem       58 
      Testing the Modified Design on the UP 1        59 
      Board.
      Laboratory Exercises                           59 
    UP1core Library Functions                        64 
      UP1core DEC-7SEG: Hex to Seven-segment         65 
      Decoder
      UP1core Debounce: Pushbutton Debounce          66 
      UP1core OnePulse: Pushbutton Single Pulse      67 
      UP1core Clk_Div: Clock Divider                 68 
      UP1core VGA_Sync: VGA Video Sync Generation    69 
      UP1core CHAR_ROM: Character Generation ROM     71 
      UP1core Keyboard: Read Keyboard Scan Code      72 
      UP1core Mouse: Mouse Cursor                    73 
    Using VHDL for Synthesis of Digital Hardware     76 
      VHDL Data Types                                76 
      VHDL Operators                                 77 
      VHDL Based Synthesis of Digital Hardware       78 
      VHDL Synthesis Models of Gate Networks         78 
      VHDL Synthesis Model of a Seven-segment LED    79 
      Decoder
      VHDL Synthesis Model of a Multiplexer          81 
      VHDL Synthesis Model of Tri-State Output       82 
      VHDL Synthesis Models of Flip-flops and        82 
      Registers
      Accidental Synthesis of Inferred Latches       84 
      VHDL Synthesis Model of a Counter              84 
      VHDL Synthesis Model of a State Machine        85 
      VHDL Synthesis Model of an ALU with an         87 
      Adder/Subtractor and a Shifter
      VHDL Synthesis of Multiply and Divide          88 
      Hardware
      VHDL Synthesis Models for Memory               89 
      Hierarchy in VHDL Synthesis Models             92 
      Using a Testbench for Verification             94 
      For Additional Information                     95 
      Laboratory Exercises                           95 
    State Machine Design: The Electric Train         100
    Controller
      The Train Control Problem                      100
      Track Power (T1,T2,T3, and T4)                 102
      Track Direction (DA1-DA0, and DB1-DB0)         102
      Switch Direction (SW1,SW2, and SW3)            103
      Train Sensor Input Signals (S1,S2,S3,S4,and    103
      S5)
      An Example Controller Design                   104
      VHDL Based Example Controller Design           108
      Simulation Vector File for State Machine       110
      Simulation
      Running the Train Control Simulation           113
      Running the Video Train System (After          114
      Successful Simulation)
      Laboratory Exercises                           115
    A Simple Computer Design: The μP 1            120
      Computer Programs and Instructions             121
      The Processor Fetch, Decode and Execute        122
      Cycle
      VHDL Model of the μP 1                      126
      Simulation of the μP 1 Computer             129
      Laboratory Exercises                           130
    VGA Video Display Generation                     134
      Video Display Technology                       134
      Video Refresh                                  134
      Using a CPLD for VGA Video Signal Generation   137
      A VHDL Sync Generation Example: UP1core        138
      VGA_SYNC
      Final Output Register for Video Signals        140
      Required Pin Assignments for Video Output      140
      Video Examples                                 141
      A Character Based Video Design                 141
      Character Selection and Fonts                  142
      VHDL Character Display Design Examples         145
      A Graphics memory design example               147
      Video Data Compression                         148
      Video Color Mixing using Dithering             149
      VHDL Graphics Display Design Example           149
      Laboratory Exercises                           151
    Communications: Interfacing to the PS/2          154
    Keyboard
      PS/2 Port Connections                          154
      Keyboard Scan Codes                            155
      Make and Break Codes                           155
      The PS/2 Serial Data Transmission Protocol     155
      Scan Code Set 2 for the PS/2 Keyboard          158
      The Keyboard UP1core                           160
      A design example using the Keyboard UP1core    163
      For additional information                     164
      Laboratory Exercises                           164
    Communications: Interfacing to the PS/2 Mouse    166
      The Mouse UP1core                              168
      Mouse Initialization                           168
      Mouse Data Packet Processing                   169
      An example design using the Mouse UP1core      170
      For additional information                     170
      Laboratory Exercises                           170
    Robotics: The UP1-bot                            172
      The UP1-bot Design                             172
      UP1-bot Servo Drive Motors                     172
      Modifying the Servos to make Drive Motors      173
      VHDL Servo Driver Code for the UP1-bot         174
      Sensors for the UP1-bot                        176
      Assembly of the UP1-bot Body                   181
      UP1-bot FLEX Expansion B Header Pins           188
      For Additional Information                     189
      Laboratory Exercises                           190
    A RISC Design: Synthesis of the MIPS             196
    Processor Core
      The MIPS Instruction Set and Processor         196
      Using VHDL to Synthesize the MIPS Processor    199
      Core
      The Top Level Module                           200
      The Control Unit                               203
      The Instruction Fetch Stage                    205
      The Decode Stage                               208
      The Execute Stage                              210
      The Data Memory Stage                          212
      Simulation of the MIPS Design                  213
      MIPS Hardware Implementation on the UP 1       214
      Board
      For Additional Information                     215
      Laboratory Exercises                           216
  Appendix A: Generation of Pseudo Random Binary     221
  Sequences
  Appendix B: MAX+PLUS II Design and Data File       223
  Extensions
  Appendix C: UP 1 Pin Assignments                   225
  Glossary                                           228
  Index                                              237
  About the Accompanying CD-ROM                      240