430 Index. D flip-flop, from nands, 189, 191, 192 D flip-flop, verilog, 37

Size: px
Start display at page:

Download "430 Index. D flip-flop, from nands, 189, 191, 192 D flip-flop, verilog, 37"

Transcription

1 Index *, in event control, 46 -> (event trigger), 177 $display, 34, 146, 165 $display, example, 44 $finish, 11, 165, 195, 196 $fullskew timing check, 297 $hold timing check, 298 $monitor, 34, 174 $nochange timing check, 299 $period timing check, 299 $readmemb, 414 $readmemh, 414 $recovery timing check, 298 $recrem timing check, 299 $removal timing check, 298 $sdf annotate, 407 $setup timing check, 298 $setuphold timing check, 298 $skew timing check, 297 $stop, 165, 195, 302 $strobe, 34, 174 $time, 34 $timeskew timing check, 297 $width timing check, 297, 299 adder vs. counter, 104 ALF, library format, 114 always block, 24, 177, 196 always, event control syntax, 32 always, for concurrency, 203 always, scope, 269 arithmetical shift, 121 array, addressing, 86 array, multidimensional, 85 array, select, 86 array, verilog, 84 arrayed instance, 213 assertion, defined, 34 assertion, example, 58 assign, continuous, 4, 14 assign-deassign, 415 assign-deassign, to avoid, 116 assignment, blocking, 32, 119, 178 assignment, nonblocking, 32, 119, 178 asynchronous control, priority, 48 asynchronous controls, 48, 49 automatic, 206 automatic task or function, 147 back-annotation, 19, 405 Backus-Naur Format (BNF), 45 BASIC programming language, 417 behavioral, 102, 104 behavioral flowchart, 134 behavioral synchronization, serial clock, 132 behavioral synthesis, 140 BIST (Built-In Self-Test), 382 bitwise operators, 12 BNF, 45 boundary scan, 379 bufif1, 122, 185, 217 bufif1, switch-level model, 251 Built-in self-test (BIST), 382 case, 31, 120 case equality, 121, 200 case, example, 122, 199 case, expression match, 199 case-sensitivity, verilog, 11 casex, expression match, 200 casex, to be avoided, 201 casez, expression match, 201 casez, wildcard match, 202 cell, configuration keyword,

2 430 Index charge strengths, 253 checksum, 89 chip failures, causes, 424 clock domains, 108 clock domains, 2-stage synchronizing ffs, 272 clock domains, independent, 235, 271 clock domains, serdes, 130, 131 clock domains, synchronizing latches, 272 clock generator, always, 33 clock generator, concurrent, 196 clock generator, forever, 33 clock generator, restartable, 197 clock, serdes embedded, 232, 235, 237, 239, 240 clocked block, 48 clocks, implementing, 33 cmos, 252 cmos primitive, 251 CMOS, switch-level primitive, 250 collapsing test vectors, 377 comment region, macro, 24, 27 comment tokens, verilog, 11 comment, synthesis directive, 24 comment, verilog, 23 concatenation, 87 concurrent block, 44 concurrent block names, scope, 269 conditional, 121 conditional operator, 31 conditional, expression match, 200 config, 280 config, configuration keyword, 280 config, scope, 269 config, to be avoided, 281 constant, verilog, 43 contention, 115, 124 contention in verilog, 114 continuous assignment, 4, 12, 14, 25, 48 corner case testing, 378 counter, 101, 104 counter, carry look-ahead, 106 counter, gray code, 107 counter, one-hot, 102 counter, ring, 107 counter, ripple, 106 counter, synchronous, 106 counter, unsigned binary, 101 counter, verilog, 71, 77 coverage summary, 377 coverage, hardware testing, 377 coverage, in software, 377 D flip-flop, from nands, 189, 191, 192 D flip-flop, verilog, 37 D latch, verilog, 37 DC macro, predefined, 27 decoder, example, 220 decoder, tree example, 220 decoder, verilog, 122 deep submicron effects, 421 default, configuration keyword, 280 default nettype, 186, 187, 216 define, 215 define, scope, 269 defparam, 415 defparam, to be avoided, 262 delay pessimism, 171 delay pessimism, moderated in specify, 305 delay triplet, example, 285 delay value, units, 13 delay, #0, 172 delay, 6-value in specify, 287 delay, blocking, 172 delay, conditional in specify, 288 delay, conflict within specify, 289 delay, declared on net, 284 delay, distributed, 282 delay, in nonblocking, 169 delay, intra-assignment, 169 delay, lumped, 282 delay, lumped example, 284 delay, min and max, 248 delay, multivalued, 171, 247 delay, nonblocking, 172 delay, not in UDP, 243 delay, overlap with specify, 289 delay, pessimism, 246 delay, polarity in specify, 288 delay, procedural, 23, 171, 178 delay, procedural avoided, 233 delay, regular, 169 delay, scheduled, delay, to x, 171 delay, transport (VHDL), 170 delay, triplet, 249 delay, trireg to x, 253 delay, with strength, 247 DesDecoder, project synthesizable, 339 Deserializer, concurrent schematic, 337 Deserializer, project schematic, 326 Design Compiler, flattening logic, 10 Design Compiler, script functionality, 7 Design for Test (DFT), 375 design partitioning, for synthesis, 271 design partitioning, rules, 270 design vision, netlist viewer, 7 design, configuration keyword, 280 DFT (Design for Test), 375

3 Index 431 DFT, summarized, 383 disable statement, 130 disable, example, 133 disable, task or function, 147 dont touch, in script vs verilog, 78 ECC, 88 90, 92, 93 ECC, finite element, 91 ECC, parity, 90 ECC, serial data, 94 ECO, example, 236 edge, functional defined, 246 edge, timing defined, 246 endconfig, configuration keyword, 280 equivalence checking verification, 425 error limit, pulse filter, 303 error-handler, generic, 164 event (keyword), 177 event control, 24 event 177 event control wait, 178 event control, inline, 32 event queue, stratified, 172, 173 event queue, verilog, 116 event, active, 170, 173, 174 event, declared, 177 event, future, 174 event, inactive (#0), 173, 174 event, monitor, 174 event, nonblocking, 174 event, queue example, 175 event, regular, 170 event, vs. evaluation, 173 exponentiation, 121 expression, defined, 46 fault simulator, 377 FIFO, 131, 151 FIFO bubble diagram, 159 FIFO dataflow, 152 FIFO parts, 153 FIFO project states, 158 FIFO schematic, 158 FIFO state logic, 159 FIFO transition logic, 160, 161, 163 FIFO, dual-port RAM, 338 FIFO, project dual-clocked, 338 FIFO, project synthesizable, 338 for, 31, 195, , 217 for, examples, 198 force-release, 415 force-release, to avoid, 116 forever, 195, 196 fork-join, 149, 170, 202, 203 formal proving verification, 425 format specifier, example, 35 format specifiers, 34 frame, serdes project, 69 full-duplex serdes, 392 full-path delay, 287 function, 146 function declaration, 146, 147 function, automatic, 206 function, example, 148, 233, 234 function, scope, 269 function, width indices, 207 gate-level, 104 generate, generate, block declarations, 218 generate, conditional, 215 generate, decoder tree, 222, 223 generate, loop example, 217 generate, loop scope quiz, 224 generate, looping, 216, 218 generate, no nesting, 216 generate, scope, 269 generate, simple decoder, 219 generate, unrolled naming, 218 genvar, 218 genvar, in looping generate, 216 hard macro, defined, 78 hierarchy, in verilog, 211 identifier, ASIC library component, 244 identifier, escaped, 44 identifier, verilog, 44 if, 31, 195 if, expression match, 199 ifdef, 215 ifdef example, 28 ifdef, example, 74 include, example, 73 inertial delay, 109, 119, 303 inertial delay example, 303 inertial delay, simulators, 172 initial, 196 initial block, 11, 24 initial block, example, 2, 12 initial, cautions, 33 initial, scope, 269 inout, 188 instance arrays, 213 instance, configuration keyword, 280, 281 instance, of module, 13 integer, 43 interface, in System Verilog, 270

4 432 Index interface, partitioning, 269 internal scan, 380 IP Block, 183 JTAG, 50, 52, 53, 59, 379 keywords lower case, 11 lane, defined, 392 lane, PCIe, 67 large, charge strength, 253 latch, 47 latch error, examples, 47 latch synthesis, 47 LFSR, 89, 91, 92, 383 LFSR polynomial, 90 Liberty library timing checks, 295 Liberty, library format, 114 LIFO, 151 literal, 43 literal expression, syntax, 13 literal syntax, 26 literal, syntax example, 15 localparam, 227, 259 localparam, conditional example, 357 localparam, example, 275 logic levels in verilog, 12 logical operators, 12 macro (compiler directive), 45 macro, examples, 73 macro, recommended usage, 28 medium, charge strength, 253 memory ECC, 88 Mentor proprietary information, xxi messaging tasks, 34 model checking verification, 425 module, 11 module header, 11, 12 module header formats, 21 module instance, scope, 269 module, ANSI header, 259 module, ANSI header example, 261 module, contents, 2 module, output reg ports, 415 module, scope, 269 module, traditional header, 260 module, traditional header example, 262 modules, for concurrency, 204 MOS, resistive strength rules, 250 MOS, switch-level primitives, 250 mux, schematic, 39 mux, switch-level model, 255 mux, verilog, 39 named block, 129, 130, 147 nand, switch-level model, 256 nmos, 251 nmos primitive, 250 noise estimation problems, 426 none (implied net default), 187 nor, switch-level model, 256 noshowcancelled inertia, 305 noshowcancelled specparam, 305 not, 217 not, switch-level model, 251, 252 notif1, 217 notifier, 297 notifier reg example, 303 notifier, in timing check, 296, 302 observability, 376 operator precedence, verilog, 121 operators, bitwise vs. logical, 128 operators, verilog table, 120 packet, serdes, 131 packet, serdes project, 69 parallel block (fork-join), 149 parallel-path delay, 287 parallel-serial converter, 78 parameter, 22, 27, 44, 80, 188, 227, 259 parameter declaration, 188 parameter override, 188, 189 parameter real, 259 parameter signed, 259 parameter, in ANSI header, 260 parameter, index range, 259 parameter, not in literals, 77 parameter, override by name, 260 parameter, override by position, 261 parameter, real, 73 parameter, signed, 73, 261 parity, memory, 88 partitioning, analog-digital example, 237 pass-switch primitives, 252 path delays, full and parallel, 287 PATHPULSE conflict rules, 304 PATHPULSE example, 304 PATHPULSE specparam, 303 PATHPULSE, inertial delay control, 303 PCI Express (PCIe), 67 PCIe lane, 67 PLL, 61 PLL 1x, 61 PLL comparator, synthesizable, 318 PLL, 1x schematic, 62 PLL, 1x synthesizable, PLL, 32x, 70

5 Index 433 PLL, 32x blocks, 71 PLL, 32x schematic, 72 PLL, clock extraction, 133 PLL, digital lock-in, 64 PLL, synthesizable, 314, 325 pmos, 251 pmos primitive, 250 port connection rules, 187 port map. of instance, 13 power distribution problems, 426 primitive, 243 primitive, scope, 269 procedural, 102 procedural assignment, 14 procedural block, 45 procedural block names, scope, 269 pulldown, 186 pulldown primitive, 252 pullup, 186 pullup primitive, 252 pulse filtering limits, 303 pulsestyle ondetect inertia, 305 pulsestyle ondetect specparam, 305 pulsestyle onevent inertia, 305 pulsestyle onevent specparam, 305 race condition, 49, 116, 117, 173 race condition, defined, 116 race, initial blocks, 118 RAM, bidir wrapper, 98 RAM, Mem1kx32 schematic, 96 RAM, simple verilog, 87 RAM, size issues, 83 rcmos primitive, 252 real variable, 62 realtime reg type, 306 reconvergent fanout, 36 reg, 12, 14 reg, in output port, 23 reg vs trireg, 253 reg, input port illegal, 23 rejection limit, pulse filter, 303 relational expression, of x, 119 repeat, 197 replication, 121 rnmos primitive, 250 rounding of decimals, 73 rpmos primitive, 250 RTL, 104, 132 RTL, defined, 103 rtran primitive, 252 rtranif0 primitive, 252 rtranif1 primitive, 252 scan chain, 56, 57 scan, boundary, 52, 379 scan, internal, 50, 380 scheduled conflicts, 172 SDC, Synopsys Design Constraint format, 415 SDF file, 18 SDF summary, 407 SDF syntax, 406, 407 SDF, delay override, 406 SDF, in verilog flow, 405 SDF, net delays, 406 SDF, path delays, 406 SDF, use with simulator, 406 serdes FIFO, 68 serdes project block diagram, 361 serdes, class project, 69 serdes, packet, 81 serdes, project block diagram, 312 serdes, project to full-duplex, 392 serial-parallel converter, 231 Serializer, project schematic, 363 shift register, 35 shift register, example, 234, 356 shift register, RTL, 40 shift register, schematic, 36, 38, 40 showcancelled inertia, 305 showcancelled specparam, 305 simulators, strength spotty, 123 small, charge strength, 253 soft errors, hardware, 375, 383 source switch-level models, 252 specify block, 285 specify block summary, 285 specify block, 6-value delays, 287 specify, scope, 269 specparam, 285, 286 specparam example, 286 specparam, with timing triplets, 286 SPEF, 406 SPICE, 251 SR latch, 5, 189, 190 state machine, design, 150 state machine, verilog, 151 statement, defined, 46 static serial clock synchronization, 141 strength, assigning, 115 strength, charge, 114 strength, charge values, 253 strength, drive, 113 strength, resistive MOS rules, 250 strength, table, 114 strength, with delay, 247 string, verilog, 44 strings, verilog storage, 33

6 434 Index structural, supply0 (net type), 187 supply1 (net type), 187 switch level, 114 switch-level model, 249 switch-level primitive logic, 185 Synopsys proprietary information, xxi system function, 45 system task, 45 System Verilog, 270, 415 System Verilog summary, 427 SystemC, 415 T flip-flop, 105, 143 table, in UDP, TAP, 423 TAP controller, 52, 379, 383 task, 146 task data sharing, 147 task declaration, 146 task, automatic, 206 task, concurrency example, 203 task, example, 233 task, exercise, 164 task, for concurrency., 202 task, scope, 269 testbench, Intro Top example, 2 three-state buffer, 122, 124 time reg type, 305 timescale, 16, 216 timescale macro, 13 timescale specifier, 4 timing arc, defined, 281 timing arc, examples, 282 timing check, 45 timing check as assertion, 295 timing check feature summary, 296 timing check negative limits, timing check notifier, 296, 302 timing check, conditional event, 302 timing check, data event, 296 timing check, limits must be constant, 297 timing check, reference event, 296 timing check, table of all 12, 297 timing check, time limits, 296 timing check, timecheck event, 296 timing check, timestamp event, 296 timing checks vs system tasks, 295 timing checks, in QuestaSim, 297 timing path and arcs, 281 timing path, causality, 282 timing triplet, example, 285 timing triplets, 249 toggle flip-flop, 105 tran primitive, 252 tranif0 primitive, 252, 255 tranif1 primitive, 252, 255 transfer-gate primitives, 252 tri (net type), 186 tri0 (net type), 186 tri1 (net type), 186 triand (net type), 186 trior (net type), 186 trireg (net type), 186 trireg switch-level net, 253 trireg vs tran primitive, 252 trireg, example, 253 TSMC proprietary information, xxi UDP, 243 UDP, combinational example, 244 UDP, sequential example, 245 UDP, summary, 246 use, configuration keyword, 280 VCD file, 17 vector, 13, 25 vector index syntax, 14 vector, bit significance, 15 vector, example, 16 vector, logical operator, 26 vector, negative index, 30 vector, select, 86 vector, sign bit, 25 vector, width (type) conversion, 26 verification, forrnal, 425 verification, functional, 424 verification, timing, 425 verilog tutorial, from Aldec, xxiii verilog, 1995 vs 2001, 413 verilog, ACC C routines, 418 verilog, arrayed instance, 213 verilog, attributes, 414 verilog, clocked block, 178 verilog, coding rules, 177, 178 verilog, comment directives, 414 verilog, compiler directives, 414, 417 verilog, conditional compile, 215 verilog, configuration, 279 verilog, declaration ordering, 205 verilog, declaration regions, 205 verilog, hierarchical names, 212, 213, 268 verilog, hierarchy path, 211 verilog, keywords, 414 verilog, named block, 129 verilog, PLI, 45, 415, 417 verilog, primitive gates, 185 verilog, scope of names, 269

7 Index 435 verilog, simulator file I/O, 414 verilog, synthesizable, 50 verilog, synthesizable summary, 413 verilog, system tasks and functions, verilog, TF C routines, 418 verilog, UDP (primitive), 243 verilog, variable, 43 verilog, VPI C routines, 418 VFO, project FastClock oscillator, 315 VFO, synthesizable, 315, 316 VHDL, 415 wand (net type), 186 watch-dog device, 208 while, 197, 198 while, examples, 198 width specifier, literals, 4 wire, 12 wire (net type), 186 wire, implied names, 186 wire, implied types, 186 wire, other net types, 186 wor (net type), 186 wrapper module methodology, 322

Index. B Back-annotation, 507 SDF, 508

Index. B Back-annotation, 507 SDF, 508 $display, 57, 206 example, 69, 225 $fatal, SystemVerilog, 538 $finish, 206, 245 $fullskew timing check, 366 $hold timing check, 366 $info, SystemVerilog, 538 $monitor, 217 $monitor, 57 $nochange timing

More information

Digital VLSI Design with Verilog

Digital VLSI Design with Verilog John Williams Digital VLSI Design with Verilog A Textbook from Silicon Valley Technical Institute Foreword by Don Thomas Sprin ger Contents Introduction xix 1 Course Description xix 2 Using this Book xx

More information

Digital VLSI Design with Verilog

Digital VLSI Design with Verilog Digital VLSI Design with Verilog John Michael Williams Digital VLSI Design with Verilog A Textbook from Silicon Valley Polytechnic Institute Second Edition John Michael Williams Wilsonville, OR USA Additional

More information

Verilog HDL. A Guide to Digital Design and Synthesis. Samir Palnitkar. SunSoft Press A Prentice Hall Title

Verilog HDL. A Guide to Digital Design and Synthesis. Samir Palnitkar. SunSoft Press A Prentice Hall Title Verilog HDL A Guide to Digital Design and Synthesis Samir Palnitkar SunSoft Press A Prentice Hall Title Table of Contents About the Author Foreword Preface Acknowledgments v xxxi xxxiii xxxvii Part 1:

More information

VERILOG QUICKSTART. Second Edition. A Practical Guide to Simulation and Synthesis in Verilog

VERILOG QUICKSTART. Second Edition. A Practical Guide to Simulation and Synthesis in Verilog VERILOG QUICKSTART A Practical Guide to Simulation and Synthesis in Verilog Second Edition VERILOG QUICKSTART A Practical Guide to Simulation and Synthesis in Verilog Second Edition James M. Lee SEVA Technologies

More information

St.MARTIN S ENGINEERING COLLEGE Dhulapally, Secunderabad

St.MARTIN S ENGINEERING COLLEGE Dhulapally, Secunderabad St.MARTIN S ENGINEERING COLLEGE Dhulapally, Secunderabad-500 014 Subject: Digital Design Using Verilog Hdl Class : ECE-II Group A (Short Answer Questions) UNIT-I 1 Define verilog HDL? 2 List levels of

More information

Verilog Tutorial (Structure, Test)

Verilog Tutorial (Structure, Test) Digital Circuit Design and Language Verilog Tutorial (Structure, Test) Chang, Ik Joon Kyunghee University Hierarchical Design Top-down Design Methodology Bottom-up Design Methodology Module START Example)

More information

INSTITUTE OF AERONAUTICAL ENGINEERING Dundigal, Hyderabad ELECTRONICS AND COMMUNICATIONS ENGINEERING

INSTITUTE OF AERONAUTICAL ENGINEERING Dundigal, Hyderabad ELECTRONICS AND COMMUNICATIONS ENGINEERING INSTITUTE OF AERONAUTICAL ENGINEERING Dundigal, Hyderabad - 00 0 ELECTRONICS AND COMMUNICATIONS ENGINEERING QUESTION BANK Course Name : DIGITAL DESIGN USING VERILOG HDL Course Code : A00 Class : II - B.

More information

Speaker: Kayting Adviser: Prof. An-Yeu Wu Date: 2009/11/23

Speaker: Kayting Adviser: Prof. An-Yeu Wu Date: 2009/11/23 98-1 Under-Graduate Project Synthesis of Combinational Logic Speaker: Kayting Adviser: Prof. An-Yeu Wu Date: 2009/11/23 What is synthesis? Outline Behavior Description for Synthesis Write Efficient HDL

More information

Online Verilog Resources

Online Verilog Resources EECS 427 Discussion 6: Verilog HDL Reading: Many references EECS 427 F08 Discussion 6 1 Online Verilog Resources ASICs the book, Ch. 11: http://www.ge.infn.it/~pratolo/verilog/verilogtutorial.pdf it/ pratolo/verilog/verilogtutorial

More information

Verilog Essentials Simulation & Synthesis

Verilog Essentials Simulation & Synthesis Verilog Essentials Simulation & Synthesis Course Description This course provides all necessary theoretical and practical know-how to design programmable logic devices using Verilog standard language.

More information

MLR Institute of Technology

MLR Institute of Technology MLR Institute of Technology Laxma Reddy Avenue, Dundigal, Quthbullapur (M), Hyderabad 500 043 Course Name Course Code Class Branch ELECTRONICS AND COMMUNICATIONS ENGINEERING QUESTION BANK : DIGITAL DESIGN

More information

OVERVIEW: ============================================================ REPLACE

OVERVIEW: ============================================================ REPLACE OVERVIEW: With mantis 928, formal arguments to properties and sequences are defined to apply to a list of arguments that follow, much like tasks and function arguments. Previously, the type had to be replicated

More information

VERILOG QUICKSTART. James M. Lee Cadence Design Systems, Inc. SPRINGER SCIENCE+BUSINESS MEDIA, LLC

VERILOG QUICKSTART. James M. Lee Cadence Design Systems, Inc. SPRINGER SCIENCE+BUSINESS MEDIA, LLC VERILOG QUICKSTART VERILOG QUICKSTART by James M. Lee Cadence Design Systems, Inc. ~. " SPRINGER SCIENCE+BUSINESS MEDIA, LLC ISBN 978-1-4613-7801-3 ISBN 978-1-4615-6113-2 (ebook) DOI 10.1007/978-1-4615-6113-2

More information

EECS 427 Lecture 14: Verilog HDL Reading: Many handouts/references. EECS 427 W07 Lecture 14 1

EECS 427 Lecture 14: Verilog HDL Reading: Many handouts/references. EECS 427 W07 Lecture 14 1 EECS 427 Lecture 14: Verilog HDL Reading: Many handouts/references EECS 427 W07 Lecture 14 1 Online Verilog Resources ASICs the book, Ch. 11: http://www.ge.infn.it/~pratolo/verilog/verilogtutorial.pdf

More information

Introduction to Verilog design. Design flow (from the book) Hierarchical Design. Lecture 2

Introduction to Verilog design. Design flow (from the book) Hierarchical Design. Lecture 2 Introduction to Verilog design Lecture 2 ECE 156A 1 Design flow (from the book) ECE 156A 2 Hierarchical Design Chip Modules Cells Primitives A chip contain many modules A module may contain other modules

More information

Verilog for High Performance

Verilog for High Performance Verilog for High Performance Course Description This course provides all necessary theoretical and practical know-how to write synthesizable HDL code through Verilog standard language. The course goes

More information

Introduction to Verilog design. Design flow (from the book)

Introduction to Verilog design. Design flow (from the book) Introduction to Verilog design Lecture 2 ECE 156A 1 Design flow (from the book) ECE 156A 2 1 Hierarchical Design Chip Modules Cells Primitives A chip contain many modules A module may contain other modules

More information

Synthesis vs. Compilation Descriptions mapped to hardware Verilog design patterns for best synthesis. Spring 2007 Lec #8 -- HW Synthesis 1

Synthesis vs. Compilation Descriptions mapped to hardware Verilog design patterns for best synthesis. Spring 2007 Lec #8 -- HW Synthesis 1 Verilog Synthesis Synthesis vs. Compilation Descriptions mapped to hardware Verilog design patterns for best synthesis Spring 2007 Lec #8 -- HW Synthesis 1 Logic Synthesis Verilog and VHDL started out

More information

Programmable Logic Devices Verilog VII CMPE 415

Programmable Logic Devices Verilog VII CMPE 415 Synthesis of Combinational Logic In theory, synthesis tools automatically create an optimal gate-level realization of a design from a high level HDL description. In reality, the results depend on the skill

More information

CSE241 VLSI Digital Circuits Winter Recitation 1: RTL Coding in Verilog

CSE241 VLSI Digital Circuits Winter Recitation 1: RTL Coding in Verilog CSE241 VLSI Digital Circuits Winter 2003 Recitation 1: RTL Coding in Verilog CSE241 R1 Verilog.1 Kahng & Cichy, UCSD 2003 Topic Outline Introduction Verilog Background Connections Modules Procedures Structural

More information

A Tutorial Introduction 1

A Tutorial Introduction 1 Preface From the Old to the New Acknowledgments xv xvii xxi 1 Verilog A Tutorial Introduction 1 Getting Started A Structural Description Simulating the binarytoeseg Driver Creating Ports For the Module

More information

The Verilog Hardware Description Language

The Verilog Hardware Description Language Donald Thomas Philip Moorby The Verilog Hardware Description Language Fifth Edition 4y Spri nnger Preface From the Old to the New Acknowledgments xv xvii xxi 1 Verilog A Tutorial Introduction Getting Started

More information

CSE140L: Components and Design Techniques for Digital Systems Lab

CSE140L: Components and Design Techniques for Digital Systems Lab CSE140L: Components and Design Techniques for Digital Systems Lab Tajana Simunic Rosing Source: Vahid, Katz, Culler 1 Announcements & Outline Lab 4 due; demo signup times listed on the cse140l site Check

More information

EEL 4783: HDL in Digital System Design

EEL 4783: HDL in Digital System Design EEL 4783: HDL in Digital System Design Lecture 15: Logic Synthesis with Verilog Prof. Mingjie Lin 1 Verilog Synthesis Synthesis vs. Compilation Descriptions mapped to hardware Verilog design patterns for

More information

Logic Synthesis. EECS150 - Digital Design Lecture 6 - Synthesis

Logic Synthesis. EECS150 - Digital Design Lecture 6 - Synthesis Logic Synthesis Verilog and VHDL started out as simulation languages, but quickly people wrote programs to automatically convert Verilog code into low-level circuit descriptions (netlists). EECS150 - Digital

More information

CSE140L: Components and Design

CSE140L: Components and Design CSE140L: Components and Design Techniques for Digital Systems Lab Tajana Simunic Rosing Source: Vahid, Katz, Culler 1 Grade distribution: 70% Labs 35% Lab 4 30% Lab 3 20% Lab 2 15% Lab 1 30% Final exam

More information

Graduate Institute of Electronics Engineering, NTU. Lecturer: Chihhao Chao Date:

Graduate Institute of Electronics Engineering, NTU. Lecturer: Chihhao Chao Date: Synthesizable Coding of Verilog Lecturer: Date: 2009.03.18 ACCESS IC LAB Outline Basic concepts of logic synthesis Synthesizable Verilog coding subset Verilog coding practices Coding for readability Coding

More information

EECS150 - Digital Design Lecture 10 Logic Synthesis

EECS150 - Digital Design Lecture 10 Logic Synthesis EECS150 - Digital Design Lecture 10 Logic Synthesis September 26, 2002 John Wawrzynek Fall 2002 EECS150 Lec10-synthesis Page 1 Logic Synthesis Verilog and VHDL stated out as simulation languages, but quickly

More information

Schematic design. Gate level design. 0 EDA (Electronic Design Assistance) 0 Classical design. 0 Computer based language

Schematic design. Gate level design. 0 EDA (Electronic Design Assistance) 0 Classical design. 0 Computer based language 1 / 15 2014/11/20 0 EDA (Electronic Design Assistance) 0 Computer based language 0 HDL (Hardware Description Language) 0 Verilog HDL 0 Created by Gateway Design Automation Corp. in 1983 First modern hardware

More information

ALTERA FPGA Design Using Verilog

ALTERA FPGA Design Using Verilog ALTERA FPGA Design Using Verilog Course Description This course provides all necessary theoretical and practical know-how to design ALTERA FPGA/CPLD using Verilog standard language. The course intention

More information

RIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM. SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8)

RIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM. SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8) RIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8) HDL-BASED SYNTHESIS Modern ASIC design use HDL together with synthesis tool to create

More information

Introduction to Digital Design with Verilog HDL

Introduction to Digital Design with Verilog HDL Introduction to Digital Design with Verilog HDL Modeling Styles 1 Levels of Abstraction n Behavioral The highest level of abstraction provided by Verilog HDL. A module is implemented in terms of the desired

More information

Contents. Appendix D Verilog Summary Page 1 of 16

Contents. Appendix D Verilog Summary Page 1 of 16 Appix D Verilog Summary Page 1 of 16 Contents Appix D Verilog Summary... 2 D.1 Basic Language Elements... 2 D.1.1 Keywords... 2 D.1.2 Comments... 2 D.1.3 Identifiers... 2 D.1.4 Numbers and Strings... 3

More information

CHAPTER - 2 : DESIGN OF ARITHMETIC CIRCUITS

CHAPTER - 2 : DESIGN OF ARITHMETIC CIRCUITS Contents i SYLLABUS osmania university UNIT - I CHAPTER - 1 : BASIC VERILOG HDL Introduction to HDLs, Overview of Digital Design With Verilog HDL, Basic Concepts, Data Types, System Tasks and Compiler

More information

EECS150 - Digital Design Lecture 10 Logic Synthesis

EECS150 - Digital Design Lecture 10 Logic Synthesis EECS150 - Digital Design Lecture 10 Logic Synthesis February 13, 2003 John Wawrzynek Spring 2003 EECS150 Lec8-synthesis Page 1 Logic Synthesis Verilog and VHDL started out as simulation languages, but

More information

Synthesis of Language Constructs. 5/10/04 & 5/13/04 Hardware Description Languages and Synthesis

Synthesis of Language Constructs. 5/10/04 & 5/13/04 Hardware Description Languages and Synthesis Synthesis of Language Constructs 1 Nets Nets declared to be input or output ports are retained Internal nets may be eliminated due to logic optimization User may force a net to exist trireg, tri0, tri1

More information

Verilog. What is Verilog? VHDL vs. Verilog. Hardware description language: Two major languages. Many EDA tools support HDL-based design

Verilog. What is Verilog? VHDL vs. Verilog. Hardware description language: Two major languages. Many EDA tools support HDL-based design Verilog What is Verilog? Hardware description language: Are used to describe digital system in text form Used for modeling, simulation, design Two major languages Verilog (IEEE 1364), latest version is

More information

Brief Introduction of Cell-based Design. Ching-Da Chan CIC/DSD

Brief Introduction of Cell-based Design. Ching-Da Chan CIC/DSD Brief Introduction of Cell-based Design Ching-Da Chan CIC/DSD 1 Design Abstraction Levels SYSTEM MODULE + GATE CIRCUIT S n+ G DEVICE n+ D 2 Full Custom V.S Cell based Design Full custom design Better patent

More information

Digital System Design with SystemVerilog

Digital System Design with SystemVerilog Digital System Design with SystemVerilog Mark Zwolinski AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo

More information

UVM for VHDL. Fast-track Verilog for VHDL Users. Cont.

UVM for VHDL. Fast-track Verilog for VHDL Users. Cont. UVM for VHDL Fast-track Verilog for VHDL Users Course Description Verilog for VHDL Users is an intensive 2-day course, converting knowledge of VHDL to practical Verilog skills. Contrasting Verilog and

More information

Sunburst Design - Verilog-2001 Design & Best Coding Practices by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.

Sunburst Design - Verilog-2001 Design & Best Coding Practices by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. World Class Verilog & SystemVerilog Training Sunburst Design - Verilog-2001 Design & Best Coding Practices by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. Cliff Cummings

More information

Modular SystemVerilog

Modular SystemVerilog SystemVerilog (IEEE 1800 TM ) is a significant new language based on the widely used and industrystandard Verilog hardware description language. The SystemVerilog extensions enhance Verilog in a number

More information

Index. A a (atto) 154 above event 120, 207 restrictions 178

Index. A a (atto) 154 above event 120, 207 restrictions 178 Symbols! (negation) 174!= (inequality) 174!== (not identical) 174 # delay 166, 216 not in analog process 196 $abstime 83, 175 $bound_step 77, 190 $discontinuity 69, 79, 80, 191 $display 192 $driver_...

More information

Verilog HDL Introduction

Verilog HDL Introduction EEE3050 Theory on Computer Architectures (Spring 2017) Prof. Jinkyu Jeong Verilog HDL Introduction 2017.05.14 TA 이규선 (GYUSUN LEE) / 안민우 (MINWOO AHN) Modules The Module Concept Basic design unit Modules

More information

Verilog. Like VHDL, Verilog HDL is like a programming language but:

Verilog. Like VHDL, Verilog HDL is like a programming language but: Verilog Verilog Like VHDL, Verilog HDL is like a programming language but: Statements can execute simultaneously unlike programming e.g. nand(y1,a1,b1); nand(y2,a2,b2); or (out,y1,y2); a1 b1 all statements

More information

Appendix A GATE-LEVEL DETAILS

Appendix A GATE-LEVEL DETAILS Appendix A GATE-LEVEL DETAILS Chapters 2 and 3 1:riefly introduced the built-in primitives. This appendix will 1:riefly describe each of the built-in primitives and the options when instantiating them.

More information

Advanced Digital Design Using FPGA. Dr. Shahrokh Abadi

Advanced Digital Design Using FPGA. Dr. Shahrokh Abadi Advanced Digital Design Using FPGA Dr. Shahrokh Abadi 1 Venue Computer Lab: Tuesdays 10 12 am (Fixed) Computer Lab: Wednesday 10-12 am (Every other odd weeks) Note: Due to some unpredicted problems with

More information

Module 4. Design of Embedded Processors. Version 2 EE IIT, Kharagpur 1

Module 4. Design of Embedded Processors. Version 2 EE IIT, Kharagpur 1 Module 4 Design of Embedded Processors Version 2 EE IIT, Kharagpur 1 Lesson 23 Introduction to Hardware Description Languages-III Version 2 EE IIT, Kharagpur 2 Instructional Objectives At the end of the

More information

VERILOG QUICKSTART. A Practical Guide to Simulation and Synthesis in Verilog. Third Edition

VERILOG QUICKSTART. A Practical Guide to Simulation and Synthesis in Verilog. Third Edition VERILOG QUICKSTART A Practical Guide to Simulation and Synthesis in Verilog Third Edition THE KLUWER INTERNATIONAL SERIES IN ENGINEERING AND COMPUTER SCIENCE VERILOG QUICKSTART A Practical Guide to Simulation

More information

UNIT V: SPECIFICATION USING VERILOG HDL

UNIT V: SPECIFICATION USING VERILOG HDL UNIT V: SPECIFICATION USING VERILOG HDL PART -A (2 Marks) 1. What are identifiers? Identifiers are names of modules, variables and other objects that we can reference in the design. Identifiers consists

More information

Verilog Language Concepts

Verilog Language Concepts Verilog Language Concepts Adapted from Z. Navabi Portions Copyright Z. Navabi, 2006 1 Verilog Language Concepts Characterizing Hardware Languages Timing Concurrency Timing and concurrency example Module

More information

FPGA for Software Engineers

FPGA for Software Engineers FPGA for Software Engineers Course Description This course closes the gap between hardware and software engineers by providing the software engineer all the necessary FPGA concepts and terms. The course

More information

Register Transfer Level in Verilog: Part I

Register Transfer Level in Verilog: Part I Source: M. Morris Mano and Michael D. Ciletti, Digital Design, 4rd Edition, 2007, Prentice Hall. Register Transfer Level in Verilog: Part I Lan-Da Van ( 范倫達 ), Ph. D. Department of Computer Science National

More information

Overview. Design flow. Principles of logic synthesis. Logic Synthesis with the common tools. Conclusions

Overview. Design flow. Principles of logic synthesis. Logic Synthesis with the common tools. Conclusions Logic Synthesis Overview Design flow Principles of logic synthesis Logic Synthesis with the common tools Conclusions 2 System Design Flow Electronic System Level (ESL) flow System C TLM, Verification,

More information

14:332:231 DIGITAL LOGIC DESIGN. Hardware Description Languages

14:332:231 DIGITAL LOGIC DESIGN. Hardware Description Languages 14:332:231 DIGITAL LOGIC DESIGN Ivan Marsic, Rutgers University Electrical & Computer Engineering Fall 2013 Lecture #22: Introduction to Verilog Hardware Description Languages Basic idea: Language constructs

More information

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 Anurag Dwivedi Digital Design : Bottom Up Approach Basic Block - Gates Digital Design : Bottom Up Approach Gates -> Flip Flops Digital

More information

Sunburst Design - Comprehensive SystemVerilog Design & Synthesis by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.

Sunburst Design - Comprehensive SystemVerilog Design & Synthesis by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. World Class SystemVerilog & UVM Training Sunburst Design - Comprehensive SystemVerilog Design & Synthesis by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. Cliff Cummings

More information

VHDL for Synthesis. Course Description. Course Duration. Goals

VHDL for Synthesis. Course Description. Course Duration. Goals VHDL for Synthesis Course Description This course provides all necessary theoretical and practical know how to write an efficient synthesizable HDL code through VHDL standard language. The course goes

More information

ECE Digital System Design & Synthesis Exercise 1 - Logic Values, Data Types & Operators - With Answers

ECE Digital System Design & Synthesis Exercise 1 - Logic Values, Data Types & Operators - With Answers ECE 601 - Digital System Design & Synthesis Exercise 1 - Logic Values, Data Types & Operators - With Answers Fall 2001 Final Version (Important changes from original posted Exercise 1 shown in color) Variables

More information

Synthesizable Verilog

Synthesizable Verilog Synthesizable Verilog Courtesy of Dr. Edwards@Columbia, and Dr. Franzon@NCSU http://csce.uark.edu +1 (479) 575-6043 yrpeng@uark.edu Design Methodology Structure and Function (Behavior) of a Design HDL

More information

VHDL. Douglas L. Perry. Third Edition

VHDL. Douglas L. Perry. Third Edition VHDL Douglas L. Perry Third Edition McGraw-Hill New York San Francisco Washington, D.C. Auckland Bogota Caracas Lisbon London Madrid Mexico City Milan Montreal New Delhi San Juan Singapore Sydney Tokyo

More information

Contents 1 Basic of Test and Role of HDLs 2 Verilog HDL for Design and Test

Contents 1 Basic of Test and Role of HDLs 2 Verilog HDL for Design and Test 1 Basic of Test and Role of HDLs... 1.1 Design and Test... 1.1.1 RTL Design Process... 1.1.2 Postmanufacturing Test... 1.2 Test Concerns... 1.2.1 Test Methods... 1.2.2 Testability Methods... 1.2.3 Testing

More information

Course Topics - Outline

Course Topics - Outline Course Topics - Outline Lecture 1 - Introduction Lecture 2 - Lexical conventions Lecture 3 - Data types Lecture 4 - Operators Lecture 5 - Behavioral modeling A Lecture 6 Behavioral modeling B Lecture 7

More information

Verilog Design Principles

Verilog Design Principles 16 h7fex // 16-bit value, low order 4 bits unknown 8 bxx001100 // 8-bit value, most significant 2 bits unknown. 8 hzz // 8-bit value, all bits high impedance. Verilog Design Principles ECGR2181 Extra Notes

More information

Verilog Tutorial. Introduction. T. A.: Hsueh-Yi Lin. 2008/3/12 VLSI Digital Signal Processing 2

Verilog Tutorial. Introduction. T. A.: Hsueh-Yi Lin. 2008/3/12 VLSI Digital Signal Processing 2 Verilog Tutorial T. A.: Hsueh-Yi Lin Introduction 2008/3/12 VLSI Digital Signal Processing 2 Verilog: A common language for industry HDL is a common way for hardware design Verilog VHDL Verilog is widely

More information

Lecture 2: Data Types, Modeling Combinational Logic in Verilog HDL. Variables and Logic Value Set. Data Types. Why use an HDL?

Lecture 2: Data Types, Modeling Combinational Logic in Verilog HDL. Variables and Logic Value Set. Data Types. Why use an HDL? Why use an HDL? Lecture 2: Data Types, Modeling Combinational Logic in Verilog HDL Increase digital design engineer s productivity (from Dataquest) Behavioral HDL RTL HDL Gates Transistors 2K 10K gates/week

More information

CAD for VLSI Design - I. Lecture 21 V. Kamakoti and Shankar Balachandran

CAD for VLSI Design - I. Lecture 21 V. Kamakoti and Shankar Balachandran CAD for VLSI Design - I Lecture 21 V. Kamakoti and Shankar Balachandran Overview of this Lecture Understanding the process of Logic synthesis Logic Synthesis of HDL constructs Logic Synthesis What is this?

More information

101-1 Under-Graduate Project Digital IC Design Flow

101-1 Under-Graduate Project Digital IC Design Flow 101-1 Under-Graduate Project Digital IC Design Flow Speaker: Ming-Chun Hsiao Adviser: Prof. An-Yeu Wu Date: 2012/9/25 ACCESS IC LAB Outline Introduction to Integrated Circuit IC Design Flow Verilog HDL

More information

EN2911X: Reconfigurable Computing Topic 02: Hardware Definition Languages

EN2911X: Reconfigurable Computing Topic 02: Hardware Definition Languages EN2911X: Reconfigurable Computing Topic 02: Hardware Definition Languages Professor Sherief Reda http://scale.engin.brown.edu School of Engineering Brown University Spring 2014 1 Introduction to Verilog

More information

Advanced Digital Design with the Verilog HDL

Advanced Digital Design with the Verilog HDL Copyright 2001, 2003 MD Ciletti 1 Advanced Digital Design with the Verilog HDL M. D. Ciletti Department of Electrical and Computer Engineering University of Colorado Colorado Springs, Colorado ciletti@vlsic.uccs.edu

More information

EN164: Design of Computing Systems Lecture 06: Lab Foundations / Verilog 2

EN164: Design of Computing Systems Lecture 06: Lab Foundations / Verilog 2 EN164: Design of Computing Systems Lecture 06: Lab Foundations / Verilog 2 Professor Sherief Reda http://scaleenginbrownedu Electrical Sciences and Computer Engineering School of Engineering Brown University

More information

A Verilog Primer. An Overview of Verilog for Digital Design and Simulation

A Verilog Primer. An Overview of Verilog for Digital Design and Simulation A Verilog Primer An Overview of Verilog for Digital Design and Simulation John Wright Vighnesh Iyer Department of Electrical Engineering and Computer Sciences College of Engineering, University of California,

More information

Verilog Design Principles

Verilog Design Principles 16 h7fex // 16-bit value, low order 4 bits unknown 8 bxx001100 // 8-bit value, most significant 2 bits unknown. 8 hzz // 8-bit value, all bits high impedance. Verilog Design Principles ECGR2181 Extra Notes

More information

Graduate Institute of Electronics Engineering, NTU Basic Concept of HDL

Graduate Institute of Electronics Engineering, NTU Basic Concept of HDL Basic Concept of HDL Lecturer: ( ) Date: 2004.03.05 ACCESS IC LAB Outline Hierarchical Design Methodology Basic Concept of Verilog HDL Switch Level Modeling Gate Level Modeling Simulation & Verification

More information

ECE 2300 Digital Logic & Computer Organization. More Sequential Logic Verilog

ECE 2300 Digital Logic & Computer Organization. More Sequential Logic Verilog ECE 2300 Digital Logic & Computer Organization Spring 2018 More Sequential Logic Verilog Lecture 7: 1 Announcements HW3 will be posted tonight Prelim 1 Thursday March 1, in class Coverage: Lectures 1~7

More information

ENGN1640: Design of Computing Systems Topic 02: Design/Lab Foundations

ENGN1640: Design of Computing Systems Topic 02: Design/Lab Foundations ENGN1640: Design of Computing Systems Topic 02: Design/Lab Foundations Professor Sherief Reda http://scale.engin.brown.edu School of Engineering Brown University Spring 2017 1 Topics 1. Programmable logic

More information

Lecture 15: System Modeling and Verilog

Lecture 15: System Modeling and Verilog Lecture 15: System Modeling and Verilog Slides courtesy of Deming Chen Intro. VLSI System Design Outline Outline Modeling Digital Systems Introduction to Verilog HDL Use of Verilog HDL in Synthesis Reading

More information

Lecture 12 VHDL Synthesis

Lecture 12 VHDL Synthesis CPE 487: Digital System Design Spring 2018 Lecture 12 VHDL Synthesis Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ 07030 1 What is Synthesis?

More information

Extending SystemVerilog Data Types to Nets

Extending SystemVerilog Data Types to Nets Extending SystemVerilog Data Types to Nets SystemVerilog extended Verilog by adding powerful new data types and operators that can be used to declare and manipulate parameters and variables. Extensions

More information

Computer Aided Design Basic Syntax Gate Level Modeling Behavioral Modeling. Verilog

Computer Aided Design Basic Syntax Gate Level Modeling Behavioral Modeling. Verilog Verilog Radek Pelánek and Šimon Řeřucha Contents 1 Computer Aided Design 2 Basic Syntax 3 Gate Level Modeling 4 Behavioral Modeling Computer Aided Design Hardware Description Languages (HDL) Verilog C

More information

Verilog Nonblocking Assignments with Delays - Myths & Mysteries

Verilog Nonblocking Assignments with Delays - Myths & Mysteries Verilog Nonblocking Assignments with Delays - Myths & Mysteries Clifford E. Cummings, Inc. cliffc@sunburst-design.com www.sunburst-design.com 2 of 67 Agenda IEEE 1364 reference model & event queue Review

More information

Verilog Tutorial. Verilog Fundamentals. Originally designers used manual translation + bread boards for verification

Verilog Tutorial. Verilog Fundamentals. Originally designers used manual translation + bread boards for verification Verilog Fundamentals Verilog Tutorial History Data types Structural Verilog Functional Verilog Adapted from Krste Asanovic Originally designers used manual translation + bread boards for verification Hardware

More information

Verilog Tutorial 9/28/2015. Verilog Fundamentals. Originally designers used manual translation + bread boards for verification

Verilog Tutorial 9/28/2015. Verilog Fundamentals. Originally designers used manual translation + bread boards for verification Verilog Fundamentals Verilog Tutorial History Data types Structural Verilog Functional Verilog Adapted from Krste Asanovic Originally designers used manual translation + bread boards for verification Hardware

More information

Introduction to Verilog

Introduction to Verilog Introduction to Verilog Synthesis and HDLs Verilog: The Module Continuous (Dataflow) Assignment Gate Level Description Procedural Assignment with always Verilog Registers Mix-and-Match Assignments The

More information

The Verilog Hardware Description Language, Fifth Edition

The Verilog Hardware Description Language, Fifth Edition The Verilog Hardware Description Language, Fifth Edition The Verilog Hardware Description Language, Fifth Edition Donald E. Thomas ECE Department Carnegie Mellon University Pittsburgh, PA Philip R. Moorby

More information

Department of Computer Science and Electrical Engineering. Intro to Verilog II

Department of Computer Science and Electrical Engineering. Intro to Verilog II Department of Computer Science and Electrical Engineering Intro to Verilog II http://6004.csail.mit.edu/6.371/handouts/l0{2,3,4}.pdf http://www.asic-world.com/verilog/ http://www.verilogtutorial.info/

More information

N-input EX-NOR gate. N-output inverter. N-input NOR gate

N-input EX-NOR gate. N-output inverter. N-input NOR gate Hardware Description Language HDL Introduction HDL is a hardware description language used to design and document electronic systems. HDL allows designers to design at various levels of abstraction. It

More information

Actel HDL Coding. Style Guide

Actel HDL Coding. Style Guide Actel HDL Coding Style Guide Actel Corporation, Mountain View, CA 94043 2003 Actel Corporation. All rights reserved. Printed in the United States of America Part Number: 5029105-6/05.04 Release: May 2004

More information

Verilog introduction. Embedded and Ambient Systems Lab

Verilog introduction. Embedded and Ambient Systems Lab Verilog introduction Embedded and Ambient Systems Lab Purpose of HDL languages Modeling hardware behavior Large part of these languages can only be used for simulation, not for hardware generation (synthesis)

More information

ENGN1640: Design of Computing Systems Topic 02: Design/Lab Foundations

ENGN1640: Design of Computing Systems Topic 02: Design/Lab Foundations ENGN1640: Design of Computing Systems Topic 02: Design/Lab Foundations Professor Sherief Reda http://scale.engin.brown.edu School of Engineering Brown University Spring 2016 1 Topics 1. Programmable logic

More information

Verilog-A/MS is a case sensitive language. Spaces, tabs, and newlines are considered white space and are ignored except when found in strings.

Verilog-A/MS is a case sensitive language. Spaces, tabs, and newlines are considered white space and are ignored except when found in strings. 5 Language Reference 1 Basics Verilog-A/MS is a case sensitive language. Spaces, tabs, and newlines are considered white space and are ignored except when found in strings. 1.1 Comments Comments are text

More information

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis Jan 31, 2012 John Wawrzynek Spring 2012 EECS150 - Lec05-verilog_synth Page 1 Outline Quick review of essentials of state elements Finite State

More information

Lab #1. Topics. 3. Introduction to Verilog 2/8/ Programmable logic. 2. Design Flow. 3. Verilog --- A Hardware Description Language

Lab #1. Topics. 3. Introduction to Verilog 2/8/ Programmable logic. 2. Design Flow. 3. Verilog --- A Hardware Description Language Lab #1 Lecture 8, 9, &10: FPGA Dataflow and Verilog Modeling February 9, 11, 13, 2015 Prof R Iris Bahar Lab #1 is posted on the webpage wwwbrownedu/departments/engineering/courses/engn1640 Note for problem

More information

Synthesis of Combinational and Sequential Circuits with Verilog

Synthesis of Combinational and Sequential Circuits with Verilog Synthesis of Combinational and Sequential Circuits with Verilog What is Verilog? Hardware description language: Are used to describe digital system in text form Used for modeling, simulation, design Two

More information

ECEN 468 Advanced Logic Design

ECEN 468 Advanced Logic Design ECEN 468 Advanced Logic Design Lecture 28: Synthesis of Language Constructs Synthesis of Nets v An explicitly declared net may be eliminated in synthesis v Primary input and output (ports) are always retained

More information

Speaker: Shao-Wei Feng Adviser: Prof. An-Yeu Wu Date: 2010/09/28

Speaker: Shao-Wei Feng Adviser: Prof. An-Yeu Wu Date: 2010/09/28 99-1 Under-Graduate Project Verilog Simulation & Debugging Tools Speaker: Shao-Wei Feng Adviser: Prof. An-Yeu Wu Date: 2010/09/28 ACCESS IC LAB Outline Basic Concept of Verilog HDL Gate Level Modeling

More information

Digital Design with SystemVerilog

Digital Design with SystemVerilog Digital Design with SystemVerilog Prof. Stephen A. Edwards Columbia University Spring 25 Synchronous Digital Design Combinational Logic Sequential Logic Summary of Modeling Styles Testbenches Why HDLs?

More information

Combinational Logic II

Combinational Logic II Combinational Logic II Ranga Rodrigo July 26, 2009 1 Binary Adder-Subtractor Digital computers perform variety of information processing tasks. Among the functions encountered are the various arithmetic

More information

A Brief Introduction to Verilog Hardware Definition Language (HDL)

A Brief Introduction to Verilog Hardware Definition Language (HDL) www.realdigital.org A Brief Introduction to Verilog Hardware Definition Language (HDL) Forward Verilog is a Hardware Description language (HDL) that is used to define the structure and/or behavior of digital

More information