Index. B Back-annotation, 507 SDF, 508

Size: px
Start display at page:

Download "Index. B Back-annotation, 507 SDF, 508"

Transcription

1 $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 check, 368 $period timing check, 368 $recovery timing check, 367 $recrem timing check, 368 $removal timing check, 367 $sdf_annotate command, 509 $setup timing check, 366 $setuphold timing check, 367 $skew timing check, 366 $stop, 206, 245 system task, 372 $strobe, 57, 217 example, 225 $time, 57 $timeskew timing check, 366 $warning, SystemVerilog, 538 $width timing check, 368 &&&, in timing check, 371 *, in event control, 71 `default_nettype, 233, 269 `define, scope, 334 `ifdef, example, 49, 104 `include, example, 103 `timescale, 32, 269 >, Event control trigger, SX microprocessor, 476 A Adder vs. counter, 137 ALF language, 529 library format, 149 always block, 44, 221, 246 for concurrency, 253 event control syntax, 54 name = vars preserved, 258 reading rationale, 217 AndOr.v, 18 Arithmetical shift, 156 Array addressing, 118 multidimensional, 117 select, 118 verilog, 116 Arrayed instance, 266 Assertion defined, 57, 363 example, 85 in serdes design, 499 assign, continuous, 18, 31 Assign-deassign, to avoid, 151 assign-deassign, to be avoided, 519 Assignment blocking, 54, 154, 222 nonblocking, 54, 55, 154, 222 Assignment statement, 27 Asynchronous control flip-flop, 74 priority, 74 automatic function recursion, 256 automatic keyword, 256 automatic task or function, 185 B Back-annotation, 507 SDF, 508 J.M. Williams, Digital VLSI Design with Verilog: A Textbook from Silicon Valley Polytechnic Institute, 543 DOI / , Springer International Publishing Switzerland 2014

2 544 Index Backus-Naur Format (BNF), 70 BASIC programming language, 522 Behavioral, 135, 136 flowchart, 170 synthesis, 177 Behavioral synch, serial clock, 169 Binary counter preloaded wraparound, 134 programmed wraparound, 134 BIST. See Built-in self-test (BIST) Bit select, 30 Bitwise operators, 28, 33, 33, 46 Block concurrent, 69 procedural, 69 BNF. See Backus-Naur Format (BNF) Boolean operators, 32, 33 Boundary scan, 473 Buffer, three-state, 160 bufif1, 158, 232 better cmos model, 310 cmos model, 310 example, 270 switch-level model, 309 Built-in self-test (BIST), 476 insertioncan, 477 in isolated systems, 478 test pattern example, 483 C Case equality operator, 156, 250 Case-sensitivity, verilog, 25 case statement, 53 example, 156, 158, 250 expression match, 249 casex to be avoided, 251 expression match, 251 casez to be avoided, 253 expression match, 252 wildcard match, 253 cell, configuration keyword, 347 Charge strength, 309, 312 trireg, 149 verilog, 149 Checksum, 122 Chip failures, causes, 527 Clock implementing, 55 serdes embedded, 288, 292, 294, 297 Clock domains, 141 independent, 337 indeterminate sampling, 338 serdes, stage synchronizing ffs, 339 synchronizing latches, 339 Clocked block, 73 Clock generator always, 56 concurrent, 246 forever, 56 restartable, 247 cmos, switch-level primitive, 309 Collapsing test vectors, 471 Comment macro regions, 43, 48 synthesis directive, 43 verilog, 43 Comment tokens, verilog, 26 Compiler directive = macro, 50 verilog list, 521, 521 Concatenation, verilog, 120 Concurrent block, 69 Concurrent block names, Conditional operator, 53, 157 expression match, 250 config, 346 to be avoided, 347 configuration keyword, 346 verilog configuration, 346 Constant, verilog, 68 Contention, 150, 160 in verilog, 149 Continuous assignment, 18, 31, 45, 73 Corner case testing, 473 Counter, 133, 137 behavioral, 144 carry look-ahead, 139 gray code, 140

3 545 one-hot, 134 overclocked, 142 ring, 140 ripple, 138 synchronous, 139 unsigned binary, 133 verilog, 100, 107 Coverage hardware testing, 471 in software, 471 summary, 472 D Dataflow modelling, 136 Datapath, 209 vs. control unit, 197 DC. See Design compiler (DC) Decoder example, 273 tree example, 274 verilog, 158 Decoder example, better, 274 Decoder tree, generate example, 276 Deep submicron effects, 525 default, configuration keyword, 346, 347 defparam, to avoid, 151 defparam, to be avoided, 327, 519 Delay avoiding procedural, 290 blocking, 215 conditional in specify, 354 conflict within specify, 356 declared on net, 350 distributed, 348 full-path, 353 ifnone in specify, 355 intraassignment, 211, 212, 213 lumped, 348, 350 min and max, 306 multivalue, 213, 214, 214, 228, 306 nonblocking, 212, 215 not in UDP, 302 overlap with specify, 356 parallel-path, 353 pessimism, 214, 305 polarity in specify, 355 procedural, 42, 213, 222 regular, 211 SDF always supersedes, 357 with strength, 305 in synthesizable code, 204 timing triplet, 307 transport (VHDL), 212 trireg to 'x,' value in specify, value in specify, 354 vector net, 228 to x, 214 Delay pessimism, moderated in specify, 374 Delay triplet, example, 350 Delay value, units, 29 DesDecoder project synthesizable, 417 purpose, 291 redesign, 407 Deserialization decoder, purpose, 291 Deserializer generic, 289 project schematic, 400 Deserializer, concurrent schematic, 415 Design compiler (DC) flattening logic, 87 macro, predefined, 48 design, configuration keyword, 347 Design for Test (DFT), 469 summarized, 438 Design partitioning rules, for synthesis, 337 design_vision netlist viewer, 23 schematic viewer, 25 D flip-flop from nands, 236, 238, 240 verilog, 61 disable example, 169 task or function, 186 disable statement, 166 D latch, verilog, 61 dont_touch examples, 430

4 546 Index in verilog, 108 Drive strength, verilog, 148 DVE gui, 21 E ECC. See Error-checking and correction (ECC) ECO, example, 293 Edge functional defined, 305 timing defined, 305 endconfig, configuration keyword, 346 Equivalence checking verification, 529 Error-checking and correction (ECC), 120, 122, 123, 126 finite element, 124 parity, 123 simple LFSR, 125 Error-handler, generic, 205 Error limit, pulse filter, 372 Event active, 212, 216, 217 vs. evaluation, 216 future, 217 inactive (#0), 216, 217, 217 $monitor, 217, 217 nonblocking, 217, 217 queue example, 218 regular, 212 event (keyword), 221 Event control, 44 declared, 221 inline, 54 wait, 221 Event 220 Event control, > trigger, 221 Event queue stratified, 215, 216 verilog, 151 Exponentiation, verilog, 156 Expression, defined, 71 F Fault simulator, 471 First-in, first-out (FIFO), 167 bubble diagram, 198 clock domains, 292 dataflow, 191 dual-clocking project, 416 dual-port RAM, 416 introduction, 190 operational details, 192 project states, 198 project synthesizable, 417 read-write parts, 192 schematic, 197 state logic, 199 transition logic, 200, 202, 203 for, 53 ease of use, 249 examples, 248 vs. while, 249 Force-release, to avoid, 151 force-release to be avoided, 519 forever, 246 termination, 246 forever loop, 245 fork-join, 187, 212, 253, 254 example, 188 for loop, 245, 247 in generate, 269 Formal proving verification, 529 Format specifier, 58 example, 58 Frame, serdes project, 98 Full-duplex serdes, 490 Full-path delay, 353 Full scan, 475 Function declaration, 184, 185 Shift1, 289 Shift1 improved, 290 function, 184, 185 automatic, 256 automatic for recursion, 256 example, 186 width indices, 256 G Gate-level, 137 generate block declarations, 272

5 547 conditional, decoder tree, 276 downward hierarchy names, 266 looping, 269, looping example, 270 loop scope quiz, 284 Mem1kx32gen reqts, 282 no nesting, 269 simple decoder, 273 unrolled naming, 272 generate loop, vector, 279 generate statement, 267 genvar example, 270 in looping generate, 269 H Hard macro, defined, 108 Header format, 1995, 42 Header format, 2001, 42 Header formats, contrasted, 41 Hierarchy, in verilog, 263 I Identifier, 69 in ASIC library, 303 escaped, 69 verilog, 69 if, 53, 245 expression match, 249 iff, example, 533 ifnone delay in specify, 355 Inertial delay, 143, 154, 155, 372 PATHPULSE example, 373 simulator errors, 214 initial block, 26, 44, 246 cautions, 56 example, 16, 27, 28 inout, not in UDP, 302 inout port, 234 input port, VHDL or SystemVerilog, 235 Instance arrays, 266 instance, configuration keyword, 347 Instantiation, of module, 29 integer, 68 interface, in SystemVerilog, 335 Interface, partitioning, 335 Internal scan, 475 Intro_Top scan chain, 85 scan I/O, 81 scan outputs, 87 Intro_Top.v, 15 J JTAG port, 76, 78, 80, 88 JTAG standard, 474 K Keywords, lower case, 25 L Lane, defined, 490 Lane, PCIe, lane, 96 large, charge strength, 312 Latch cts assign, 72 flip-flop preferred, 73 glitch-proof, 60 vs. mux, 71 synthesis, 72 synthesizable, 72 verbose synthesis, 72 LFSR. See Linear feedback shift register (LFSR) Liberty language, 529 Liberty, library format, 149 Liberty library timing checks, 364 LIFO, 190 Linear feedback shift register (LFSR), 122, 124, 125, 478 polynomial, 123 simple, 125 Literal, 68 Literal expression, syntax, 28 Literal syntax, 46 Literal, syntax example, 31 Localparam, 281 localparam conditional example, 440 declaration, 324

6 548 Index examples, 343 sized, 428 sized state decs, 428 Logical operators, 28, 32 Logic levels in verilog, 28, 28 M Macro example, 103 recommended usage, 49 Macro (compiler directive), 70 Macro, = compiler directive, 50 medium, charge strength, 312 Memory dual-port DPMem1kx32, 421 ECC, 120 random access, 115 sequential access, 115 Mentor proprietary information, 3 Messaging tasks, 56 Model checking verification, 529 module, 25, 26 ANSI header, 324, 326 for concurrency, 255 output reg ports, 519 scope, 334 traditional header, 324, 326 Module, example, 26 Module header, 27, 27 formats, 40 module instance, scope, 334 MOS resistive strength rules, 308 switch-level primitives, Mux schematic, 63 switch-level model, 315 verilog, 63 N Named block, 165, 166, 186 nand, switch-level model, 316 Net, definition, 67 nmos primitive, 308, 310 Noise estimation problems, 530 none implied net default, 233 nor, switch-level model, 316 noshowcancelled specparam, 375 not example, 270 switch-level model, 311 notif1 example, 270 Notifier, 365 Notifier, in timing check, 364, 371 Notifier reg example, 372, 379 O Observability, hardware testing, 470 Operator precedence, verilog, 157 Operators bitwise vs. logical, 164 verilog table, 156 P Packet serdes, 168 Packet serdes project, 98 Parallel block (fork-join), 187 Parallel-path delay, 353 Parallel-serial converter, 108 Parameter, 48 declaration, 235 override, 235 vs. port declaration, 235 real, 103 signed, 103 parameter, 42, 68, 280 in ANSI header, 324 generic declaration, 324 index range, 324 not in literals, 107 override by name, 325 override by position, 325 real, 324 signed, 324, 325 Parity memory, 121 serdes data, 127 xor ^ operator, 121 Partitioning, analog-digital example, 294 Part select, 30 Pass-switch primitives, 311 Path delays, full and parallel, 353

7 549 PATHPULSE conflict rules, 373 inertial delay control, 373 specparam, 373 PATHPULSE example, 373 PCI Express (PCIe), 96 analogue issues, 97 lane, 96 Phase-locked loop (PLL), 89 clock-comparator, 106 clock extraction, 168 digital lock-in, 93 SerialRx.v, 403 smooth comparator, 93 synthesizable, 384, 400 synthesizable ClockComparator, 388 synthesizable design block diagram, 399 synthesizable sync function, x, x blocks, x schematic, 102 PLI, verilog, 521 PLL. See Phase-locked loop (PLL) PLL 1x, 90 schematic, 90 synthesizable, pmos primitive, 308, 310 Port connection rules, 234 Port declaration, 27 Port map, of module, 29 Power distribution problems, 530 Primitive switch-level logic, 231 verilog gates, 231 primitive, 301 scope, 334 Problems noise estimation, 530 power distribution, 530 Procedural, 135 assignment, 31 block, 69 Procedural block names, Property specification language (PSL), 529 PSL language, 537 pulldown gate, 232 pulldown primitive, 312 pullup gate, 232 pullup primitive, 312 Pulse filtering delay limits, 372 pulsestyle_ondetect inertia, 374 pulsestyle_ondetect specparam, 374 pulsestyle_onevent inertia, 374 pulsestyle_onevent specparam, 374 R Race condition, 74, 152, 153, 215 defined, 152 Race, initial blocks, 154 RAM bidir wrapper, 131 Mem1kx32 schematic, 129 simple verilog, 119 size issues, 116 rcmos primitive, 311 realtime reg type, 375 real variable, 90 Reconvergent fanout, 59 Reduction operator, 33, 34, 46 reg, 30 input port illegal, 42 in output port, 42 vs. trireg, 312 Register Transfer Logic (RTL), 30, 136, 169 defined, 136 Rejection limit, pulse filter, 372 Relational expression, of 'x,' 155 Relational operator, 46, 46 repeat, 247 repeat loop, 247 Replication operator, 157 rnmos primitive, 308 Rounding of decimals, 103 rpmos primitive, 308 rtranif0 primitive, 311 rtranif1 primitive, 311 rtran primitive, 311 S Scan boundary, 78, 473

8 550 Index chain, 84 full, 475 internal, 76, 475 Scan chain, Intro_Top, 85 Scheduled conflicts, 215 SDF annotation messages, VCS, 465 back annotation, 508 delay always prevails, 357 file, 36 file sample, 514 net delays, 508 overrides delays, 508 path delays, 508 summary, 509 syntax, 508, 509 use with simulator, 509 in verilog flow, 508 Serdes class project, 98 clock domains, 167 DesDecoder, 299 embedded clock, 168, 288, 292 FIFO, 97 file organization, final, 448 full-duplex project, 490 packet, 111 project block diagram, 382, 446 SerEncoder, block diagram, 452 Serializer, project schematic, 449 Serial-parallel converter, 287 Set_dont_touch, examples, 430 Shift, arithmetical, 156 Shift register, 58 example, 440 parallel-load, 63 procedural, 64 RTL, 64 schematic, 59, 62, 64 serial load, 62 showcancelled inertia, 375 showcancelled specparam, 374 Simulation unknowns, display values, 31 Simulators, strength spotty, 158 small, charge strength, 312 Soft errors, hardware, 470, 478 Source switch-level models, 312 specify block, 351 summary, value delays, 354 specify, specparam, 351 defined, 352 example, 353, 360 with timing triplets, 353 SPICE, 310 in verilog A/MS, 539 SR latch, 236, 237 SR.latch, 19 SR latch, reset sequence, 241 SR.v, 19 Standard parasitic exchange format (SPEF), 508 State clock generator, synthesizable, 429 State machine design, 189 verilog, 189 Statement, defined, 71 Static serial clock synch, 178 Strength assigning, 150 charge, 149 charge values, 312 with delay, 305 drive, 148 resistive MOS rules, 309 table, 150 String verilog, 68 verilog storage, 56 Structural, 135, 136 supply0 net type, 233 supply1 net type, 233 Switch level model, 149, 307 Synopsys Design Constraint format (SDC), 520 Synopsys proprietary information, 3 Synthesis, importance of, 37 SystemC, can use SDC, 520 System function, 70 System task, 70 System tasks and functions, 521 verilog list, 520 SystemVerilog, 531

9 551 always_comb block, 534 always_ff block, 534 always_latch block, 534 assertion language example, 538 break command, 534 continue command, 535 $fatal, 538 $info, 538 interface example, 536 logic type, new assertion language, new bit type, 533 new gated event control iff, 533 new interface type, new looping commands, new timescale alternatives, 534 primary features, return command, 535 structure, 531 unbased, unsigned ' literals, 533 $warning, 538 T table in sequential UDP, 304 in UDP, TAP controller, 78, 474, 478 TAP port, 527 task, 184, 185 automatic, 256 automatic vars not shared, 256 for concurrency, 253 concurrency example, 254 exercise, 205 local vars static shared, 256 Task data sharing, 185 Task declaration, 184 Task, Unload32, 290 Testbench Intro_Top. example, 16 Test vectors, collapsing, 471 T flip-flop, 138 T flip-flop, 180 Three-state buffer, 157, 160 time reg type, 375 Timescale macro, 29 Timescale specifier, 17 Timing arc defined, 347 examples, 348 Timing check, 70 as assertion, 364 avoiding negative limits, 371 conditional event, 371 data event, 364 feature summary, 364 $fullskew, 366 $hold, 366 Liberty library, 364 limits must be constant, 365 negative limits, 369, 370 $nochange, 368 notifier, 364, 371, 372 $period, 368 in QuestaSim, 366 $recovery, 367 $recrem, 368 reference event, 364, 365 $removal, 367 $setup, 366 $setuphold, 367 $skew, 366 vs. system tasks, 363 table of 12, 365 timecheck event, time limits, 365 $timeskew, 366 timestamp event, 365 $width, 368 Timing paths and arcs, 348 causality, 348 Timing triplets, 307 example, 350 Toggle flip-flop, 138 tranif0 primitive, 311, 315 tranif1 primitive, 311, 315 tran primitive, 311, 312 Transfer-gate primitives, 311 triand net type, 233

10 552 Index tri net type, 233 tri0 net type, 233 tri1 net type, 233 trior net type, 233 trireg charge strength, 149 example, 313 net type, 233 pulse-filter model, 317 switch-level net, 312 vs. tran primitive, 311 TSMC proprietary information, 3 U UDP. See User-defined primitives (UDP) use, configuration keyword, 347 User-defined primitives (UDP), 301 combinational example, 302 sequential example, 303 summary, 304 V VAMS = verilog A/MS, 539 Variable-frequency oscillator (VFO) new comparator sampler, 383 old comparator sampler, 383 project FastClock oscillator, 385 synthesizable, 385, 386 VCD file, 35 VCS, schematic viewer, 23 Vector, 29, 45 bit significance, 32 example, 32 index syntax, 30 logical operator, 46 negative index, 52 select, 119 sign bit, 45 type conversions, 47 verilog, 116 width (type) conversion, 47 Verification equivalence checking, 529 formal, 529 formal proving, 529 functional, 528 model checking, 529 timing, 528 Verilog arrayed instance, 266 attributes unused, 519 clocked block, 222 coding rules, 220, 222 comment directives, 519 compiler directive list, 521, 521 compiler directives, 518 conditional compile, 267 configuration, 346 declaration ordering, 257 declaration regions, 257 hierarchical names, 264, 265, 333 hierarchy path, 263 keywords, 518 named block, 165 old ACC C routines, 523 old TF C routines, 523 operators, 46 PLI, 70, 519, 521 PLI VPI C routines, 523 scope of names, 334 simulator file I/O, 518 synthesizable, 75 synthesizable summary, 517 system task and function list, 520 system tasks and functions, 518 three wiring tricks, 519 UDP (primitive), 301 variable, vs. 2001, 517 Verilog A/MS analog block, 539 analogue FF example, 541 analogue functionality, 540 analogue/mixed signal, 538 applicability, 540 benefits, 541 branch, 540 connectmodule, 540 cross operator, 541 discipline, 540 dual-kernel functionality, 540 I operator, 540

11 553 nature, 540 node, 540 operator, 540 (please insert symbol) SPICE allowed, 539 transition operator, 541 two kernels, 539 = VAMS, 539 verilog-a relationship, 539 V operator, 540 VFO. See Variable-frequency oscillator (VFO) VHDL, can use SDC, 520 W wand net type, 233 Watch-dog device, 260 while vs. for, 248 example, 248 header delay, 249 while loop, 247 Width specifier, 17 wire implied names, 232 implied net, 233 net type, 233 other net types, 233 Wired and, 68 Wired or, 68 Wired-or, verilog, 144 wor gate, verilog, 144 wor net type, 233 Wrapper module methodology, 393 X XorNor.v, 20 Z Z state, not in UDP, 302

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

430 Index. D flip-flop, from nands, 189, 191, 192 D flip-flop, verilog, 37 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

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

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. 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

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

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

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

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

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 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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. 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 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

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

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

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

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

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 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

In this lecture, we will focus on two very important digital building blocks: counters which can either count events or keep time information, and

In this lecture, we will focus on two very important digital building blocks: counters which can either count events or keep time information, and In this lecture, we will focus on two very important digital building blocks: counters which can either count events or keep time information, and shift registers, which is most useful in conversion between

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

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

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

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

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

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

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

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

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

Lecture 32: SystemVerilog

Lecture 32: SystemVerilog Lecture 32: SystemVerilog Outline SystemVerilog module adder(input logic [31:0] a, input logic [31:0] b, output logic [31:0] y); assign y = a + b; Note that the inputs and outputs are 32-bit busses. 17:

More information

VHDL: RTL Synthesis Basics. 1 of 59

VHDL: RTL Synthesis Basics. 1 of 59 VHDL: RTL Synthesis Basics 1 of 59 Goals To learn the basics of RTL synthesis. To be able to synthesize a digital system, given its VHDL model. To be able to relate VHDL code to its synthesized output.

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

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

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

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Hardware Design Environments Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Outline Welcome to COE 405 Digital System Design Design Domains and Levels of Abstractions Synthesis

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

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

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

Sunburst Design - Advanced SystemVerilog for Design & Verification by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.

Sunburst Design - Advanced SystemVerilog for Design & Verification by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. World Class Verilog & SystemVerilog Training Sunburst Design - Advanced SystemVerilog for Design & Verification by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. Cliff

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

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

Chapter 4 :: Topics. Introduction. SystemVerilog. Hardware description language (HDL): allows designer to specify logic function only.

Chapter 4 :: Topics. Introduction. SystemVerilog. Hardware description language (HDL): allows designer to specify logic function only. Chapter 4 :: Hardware Description Languages Digital Design and Computer Architecture David Money Harris and Sarah L. Harris Chapter 4 :: Topics Introduction Combinational Logic Structural Modeling Sequential

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

The IEEE Verilog Standard What s New, and Why You Need It. by Stuart Sutherland Sutherland HDL, Inc.

The IEEE Verilog Standard What s New, and Why You Need It. by Stuart Sutherland Sutherland HDL, Inc. DISCAIMER: This presentation is strictly an overview it is NOT the full IEEE standard, and does NOT reflect the full details of the enhancements to the Verilog standard! The IEEE Verilog 1364-2000 2001

More information

Spiral 1 / Unit 4 Verilog HDL. Digital Circuit Design Steps. Digital Circuit Design OVERVIEW. Mark Redekopp. Description. Verification.

Spiral 1 / Unit 4 Verilog HDL. Digital Circuit Design Steps. Digital Circuit Design OVERVIEW. Mark Redekopp. Description. Verification. 1-4.1 1-4.2 Spiral 1 / Unit 4 Verilog HDL Mark Redekopp OVERVIEW 1-4.3 1-4.4 Digital Circuit Design Steps Digital Circuit Design Description Design and computer-entry of circuit Verification Input Stimulus

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

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

Chapter 2 Using Hardware Description Language Verilog. Overview

Chapter 2 Using Hardware Description Language Verilog. Overview Chapter 2 Using Hardware Description Language Verilog CSE4210 Winter 2012 Mokhtar Aboelaze based on slides by Dr. Shoab A. Khan Overview Algorithm development isa usually done in MATLAB, C, or C++ Code

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

Verilog Module 1 Introduction and Combinational Logic

Verilog Module 1 Introduction and Combinational Logic Verilog Module 1 Introduction and Combinational Logic Jim Duckworth ECE Department, WPI 1 Module 1 Verilog background 1983: Gateway Design Automation released Verilog HDL Verilog and simulator 1985: Verilog

More information

SystemVerilog 3.1: It s What The DAVEs In Your Company Asked For

SystemVerilog 3.1: It s What The DAVEs In Your Company Asked For February 24-26, 2003 SystemVerilog 3.1: It s What The DAVEs In Your Company Asked For Stuart HDL, Inc. www.sutherland-hdl.com 2/27/2003 1 This presentation will Define what is SystemVerilog Provide an

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

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

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

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

register:a group of binary cells suitable for holding binary information flip-flops + gates

register:a group of binary cells suitable for holding binary information flip-flops + gates 9 차시 1 Ch. 6 Registers and Counters 6.1 Registers register:a group of binary cells suitable for holding binary information flip-flops + gates control when and how new information is transferred into the

More information

Graphics: Alexandra Nolte, Gesine Marwedel, Universität Dortmund. RTL Synthesis

Graphics: Alexandra Nolte, Gesine Marwedel, Universität Dortmund. RTL Synthesis Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Universität Dortmund RTL Synthesis Purpose of HDLs Purpose of Hardware Description Languages: Capture design in Register Transfer Language form i.e. All

More information

HIERARCHICAL DESIGN. RTL Hardware Design by P. Chu. Chapter 13 1

HIERARCHICAL DESIGN. RTL Hardware Design by P. Chu. Chapter 13 1 HIERARCHICAL DESIGN Chapter 13 1 Outline 1. Introduction 2. Components 3. Generics 4. Configuration 5. Other supporting constructs Chapter 13 2 1. Introduction How to deal with 1M gates or more? Hierarchical

More information

Outline HIERARCHICAL DESIGN. 1. Introduction. Benefits of hierarchical design

Outline HIERARCHICAL DESIGN. 1. Introduction. Benefits of hierarchical design Outline HIERARCHICAL DESIGN 1. Introduction 2. Components 3. Generics 4. Configuration 5. Other supporting constructs Chapter 13 1 Chapter 13 2 1. Introduction How to deal with 1M gates or more? Hierarchical

More information