• No results found

Preface Digital Design Using VHDL and PLDs p. 1 VHDL/PLD Design Methodology p. 1 Requirements Analysis and Specification p. 5 VHDL Design Description

N/A
N/A
Protected

Academic year: 2021

Share "Preface Digital Design Using VHDL and PLDs p. 1 VHDL/PLD Design Methodology p. 1 Requirements Analysis and Specification p. 5 VHDL Design Description"

Copied!
5
0
0

Loading.... (view fulltext now)

Full text

(1)

Preface

Digital Design Using VHDL and PLDs p. 1

VHDL/PLD Design Methodology p. 1

Requirements Analysis and Specification p. 5

VHDL Design Description p. 6

Verification Using Simulation p. 11

Testbenches p. 13

Functional (Behavioral) Simulation p. 16

Programmable Logic Devices (PLDs) p. 18

SPLDs and the 22V10 p. 21

Logic Synthesis for the Target PLD p. 27

Place-and-Route and Timing Simulation p. 31

Programming and Verifying a Target PLD p. 37

VHDL/PLD Design Methodology Advantages p. 38

VHDL's Development p. 39

VHDL for Synthesis versus VHDL for Simulation p. 39

This Book's Primary Objective p. 40

Entities, Architectures, and Coding Styles p. 44

Design Units, Library Units, and Design Entities p. 44

Entity Declaration p. 45

VHDL Syntax Definitions p. 47

Port Modes p. 50

Architecture Body p. 53

Coding Styles p. 55

Synthesis Results versus Coding Style p. 66

Levels of Abstraction and Synthesis p. 69

Design Hierarchy and Structural Style p. 71

Signals and Data Types p. 82

Object Classes and Object Types p. 82

Signal Objects p. 84

Scalar Types p. 88

Type Std_Logic p. 93

Scalar Literals and Scalar Constants p. 99

Composite Types p. 100

Arrays p. 101

Types Unsigned and Signed p. 107

Composite Literals and Composite Constants p. 110

Integer Types p. 112

Port Types for Synthesis p. 116

Operators and Expressions p. 118

(2)

Logical Operators p. 123

Signal Assignments in Dataflow Style Architectures p. 127

Selected Signal Assignment p. 130

Type Boolean and the Relational Operators p. 132

Conditional Signal Assignment p. 134

Priority Encoders p. 139

Don't Care Inputs and Outputs p. 140

Decoders p. 144

Table Lookup p. 147

Three-state Buffers p. 151

Avoiding Combinational Loops p. 155

Behavi oral Style Combinational Design p. 165

Behavioral Style Architecture p. 165

Process Statement p. 169 Sequential Statements p. 170 Case Statement p. 171 If Statement p. 176 Loop Statement p. 181 Variables p. 185

Parity Detector Example p. 188

Synthesis of Processes Describing Combinational Systems p. 193

Event-Driven Simulation p. 201

Simulator Approaches p. 201

Elaboration p. 203

Signal Drivers p. 208

Simulator Kernel Process p. 210

Simulation Initialization p. 212

Simulation Cycles p. 215

Signals versus Variables p. 223

Delta Delays p. 230

Delta Delays and Combinational Feedback p. 235

Multiple Drivers p. 239

Signal Attributes p. 241

Testbenche s for Combinational Designs p. 251

Design Verification p. 251

Functional Verification of Combinational Designs p. 255

A Simple Testbench p. 255

Physical Types p. 258

Single Process Testbench p. 260

Wait Statements p. 263

(3)

Records and Table Lookup Testbenches p. 268 Testbenches That Compute Stimulus and Expected Results p. 272

Predefined Shift Operators p. 274

Stimulus Order Based on UUT Functionality p. 276

Comparing a UUT to a Behavioral Intent Model p. 279

Code Coverage and Branch Coverage p. 281

Post-Synthesis and Timing Verifications for Combinational Designs p. 284

Timing Models Using VITAL and SDF p. 288

Latches and Flip - flops p. 304

Sequential Systems and Their Memory Elements p. 304

D Latch p. 308

Detecting Clock Edges p. 315

D Flip-flops p. 317

Enabled (Gated) Flip-flop p. 324

Other Flip-flop Types p. 328

PLD Primitive Memory Elements p. 331

Timing Requirements and Synchronous Input Data p. 332

MultibitLatches, Registers, Counters, and Memory p. 337

Multibit Latches and Registers p. 337

Shift Registers p. 340

Shift Register Counters p. 346

Counters p. 348

Detecting Non-clock Signal Edges p. 360

Microprocessor Compatible Pulse Width Modulated Signal Generator p. 366

Memories p. 370

Finite State Machines p. 380

Finite State Machines p. 380

FSM State Diagrams p. 386

Three Process FSM VHDL Template p. 388

State Diagram Development p. 392

Decoder for an Optical Shaft Encoder p. 403

State Encoding and State Assignment p. 409

Supposedly Safe FSMs p. 414

Inhibit Logic FSM Example p. 418

Counters as Moore FSMs p. 422

ASM Charts and RTL Design p. 431

Algorithmic State Machine Charts p. 431

Converting ASM Charts to VHDL p. 43

System Architecture p. 441

Successive Approximation Register Design Example p. 445

(4)

Subprograms p. 469

Subprograms p. 469

Functions p. 473

Procedures p. 480

Array Attributes and Unconstrained Arrays p. 484

Overloading Subprograms and Operators p. 491

Type Conversions p. 494

Packages p. 501

Packages and Package Bodies p. 501

Standard and De Facto Standard Packages p. 505

Package STD_LOGIC_1164 p. 510

Package NUMERIC_STD (IEEE Std 1076.3) p. 516

Package STD_LOGIC_ARITH p. 523

Packages for VHDL Text Output p. 524

Testbenches for Sequential Systems p. 526

Simple Sequential Testbenches p. 526

Generating a System Clock p. 527

Generating the System Reset p. 531

Synchronizing Stimulus Generation and Monitoring p. 532

Testbench for Successive Approximation Register p. 538

Determining a Testbench Stimulus for a Sequential System p. 542

Using Procedures for Stimulus Generation p. 545

Output Verification in Stimulus Procedures p. 550

Bus Functional Models p. 552

Response Monitors p. 560

Modular Design and Hierarchy p. 566

Modular Design, Partitioning, and Hierarchy p. 566

Design Units and Library Units p. 571

Design Libraries p. 573

Using Library Units p. 574

Direct Design Entity Instantiation p. 577

Components and Indirect Design Entity Instantiation p. 580

Configuration Declarations p. 587

Component Connections p. 594

Parameterized Design Entities p. 598

Library of Parameterized Modules (LPM) p. 602

Generate Statement p. 605

More Design Examples p. 615

Microprocessor Compatible Quadrature Decoder/Counter Design p. 615

Verification of Quadrature Decoder/Counter p. 624

(5)

Electronic Safe Design p. 630

Verification of Electronic Safe p. 644

Encoder for RF Transmitter Design p. 649

Appendix VHDL Attributes p. 659

Bibliography p. 663

Index

References

Related documents

The Camera starts integration of incoming light from the first external trigger input falling edge and exposes incoming light at shutter time.. It repeats this sequence the

Key words, terms, names, concepts: California Proposition 8, Prop 8; same-sex marriage, gay marriage; Orange County; LGBT rights movement, LGBT community; stigma;

Government of Newfoundland and Labrador instituted an independent panel to conduct a public review and assess the potential socio-economic and environmental implications of

If guest players are used it must be noted on the team roster and permission (using the Guest Player Release Form) from the Club and League/Association must be submitted with the

Thus, the protocol for model building presented here can be applied to derive the normal metabolite concentrations in newborn urine samples for the general population in the

Twente ONOS Internet2 Other

In order to test our view that child molesters turn to children for sex, comfort and intimacy because they do not have the capacity necessary to meet these needs with adults,

Migrant Movements through Djibouti to Yemen (January 2020 - February 2021) Migrant Flows Observed Through Djibouti and at Yemen Points of Entry.. • Migrants’ movements into the