Defining UVM Coverage in IDesignSpec Sandeep Thakur Agnisys Support Team

Size: px
Start display at page:

Download "Defining UVM Coverage in IDesignSpec Sandeep Thakur Agnisys Support Team"

Transcription

1 Defining UVM Coverage in IDesignSpec Sandeep Thakur Agnisys Support Team Table of Contents DEFINING UVM COVERAGE IN IDESIGNSPEC... 1 Customize Auto-generated Coverage... 5 User-Defined Coverage... 6 Mention the Coverage Identifiers and their "one-hot" values Linking the Covergroups and Its respective Identifiers Control the user-defined coverage... 8 Summary... 9 Defining UVM Coverage in IDesignSpec UVM Register Model has its default coverage types i.e. fields, bits and address-map coverage types.idesignspec (IDS) automatically generate the coverage code for all the components inside the top level block. User can also control, what type of coverage code should be generated for any particular register or block. This is done using IDS property coverage which support values on, off, a, b and f which generates: a Coverage code for the addresses read or written in an address map. b Coverage code for the bits read or written in registers. f Coverage code for the values of fields. on Coverage code for all the above mentioned types off No coverage code will be generated For a register or block, user can define multiple coverage types like ab, fb and so on. For this, coverage code will be generated for multiple types. coverage=on is similar to coverage=abf. In case of f and b types of coverage, two read and write access type covergroups are generated for each type of coverages(f.rd, f.wr, b.rd, b.wr). e.g. in case of f type coverage rd_cg_vals and wr_cg_vals are generated. User can also restrict covergroups generation based on read or write access types using property coverage=f.rd, will generate only read access type 1

2 covergroups(rd_cg_vals) or coverage=f.wr will generate write access type(wr_cg_vals).user can generate whatever access types of covergroups using rd/wr to the coverage property value. This coverage property is hierarchical, if mentioned in the block,it will be applied for all the registers that are inside the block. User can also mention this property for a particular register, which will over-ride this property value if mentioned above in its (parent) block. Coverage code is generated for Blocks, Memories and Registers deping on where coverage property value. For Register (reg1) having fields(fld1& fld2), there are two types of covergroups that can be generated, covergroups according to values of fields(f) read and written and covergroups for bits read and written in registers(b). Deping on the coverage property value either b, f, bf or on the coverage code will be generated for that register. Following coverage code will be generated for reg1 register having coverage property value equal to on or bf : Tip: Coverage code is in blue colour. class basic_blk_reg1 exts uvm_reg; randuvm_reg_field fld1; randuvm_reg_field fld2; localuvm_reg_data_tm_current; localuvm_reg_data_tm_data; localuvm_reg_data_tm_be; local bit m_is_read; covergroupwr_cg_bits; field_0: coverpoint {m_current[0],m_data[0]} iff (!m_is_read&&m_be[0]); field_1: coverpoint {m_current[1],m_data[1]} iff (!m_is_read&&m_be[0]); field_2: coverpoint {m_current[2],m_data[2]} iff (!m_is_read&&m_be[0]); field_3: coverpoint {m_current[3],m_data[3]} iff (!m_is_read&&m_be[0]); field_4: coverpoint {m_current[4],m_data[4]} iff (!m_is_read&&m_be[0]); field_5: coverpoint {m_current[5],m_data[5]} iff (!m_is_read&&m_be[0]); field_6: coverpoint {m_current[6],m_data[6]} iff (!m_is_read&&m_be[0]); field_7: coverpoint {m_current[7],m_data[7]} iff (!m_is_read&&m_be[0]); covergrouprd_cg_bits; field_0: coverpoint {m_current[0],m_data[0]} iff (m_is_read&&m_be[0]); field_1: coverpoint {m_current[1],m_data[1]} iff (m_is_read&&m_be[0]); field_2: coverpoint {m_current[2],m_data[2]} iff (m_is_read&&m_be[0]); field_3: coverpoint {m_current[3],m_data[3]} iff (m_is_read&&m_be[0]); field_4: coverpoint {m_current[4],m_data[4]} iff (m_is_read&&m_be[0]); field_5: coverpoint {m_current[5],m_data[5]} iff (m_is_read&&m_be[0]); field_6: coverpoint {m_current[6],m_data[6]} iff (m_is_read&&m_be[0]); field_7: coverpoint {m_current[7],m_data[7]} iff (m_is_read&&m_be[0]); covergroupwr_cg_vals; fld1: coverpointfld1.value[3:0]; fld2: coverpointfld2.value[3:0]; covergrouprd_cg_vals; fld1: coverpointfld1.value[3:0]; fld2: coverpointfld2.value[3:0]; function new(string name = "basic_blk_reg1"); 2

3 super.new(name, 8, build_coverage(uvm_cvr_reg_bits + UVM_CVR_FIELD_VALS)); add_coverage(build_coverage(uvm_cvr_reg_bits + UVM_CVR_FIELD_VALS)); //Added because build coverage in the line above doesn t work due to a bug in UVM 1.1 library if (has_coverage(uvm_cvr_reg_bits)) wr_cg_bits = new(); rd_cg_bits = new(); if (has_coverage(uvm_cvr_field_vals)) wr_cg_vals = new(); rd_cg_vals = new(); function virtual function void sample(uvm_reg_data_t data, uvm_reg_data_tbyte_en, bit is_read, uvm_reg_map map); super.sample(data, byte_en, is_read, map); if (get_coverage(uvm_cvr_reg_bits)) m_current = get(); m_data = data; m_be = byte_en; m_is_read = is_read; if(!is_read) wr_cg_bits.sample(); if(is_read) rd_cg_bits.sample(); if (get_coverage(uvm_cvr_field_vals)) if(!is_read) wr_cg_vals.sample(); if(is_read) rd_cg_vals.sample(); function virtual function void sample_values(); super.sample_values(); if (get_coverage(uvm_cvr_field_vals)) wr_cg_vals.sample(); rd_cg_vals.sample(); function virtual function void build(); this.fld1 = uvm_reg_field::type_id::create("fld1"); this.fld2 = uvm_reg_field::type_id::create("fld2"); this.fld1.configure(this, 4, 0, "RW", 0, 'd2, 1, 1, 0); this.fld2.configure(this, 4, 4, "RW", 0, 'd12, 1, 1, 0); function `uvm_object_utils(basic_blk_reg1) class If coverage property has value on or a for Memory(DMA_MEM) following coverage code will be generated for DMA_MEM memory: classbasic_blk_dma_mem exts uvm_mem; 3

4 localuvm_reg_addr_tm_offset; covergroupcg_addr; QUADRANTS :coverpointm_offset { bins FIRST = {[0:63]}; bins SECOND = {[64:127]}; bins THIRD = {[128:191]}; bins FOURTH = {[192:255]}; } function new(string name = "basic_blk_dma_mem"); super.new(name, 'h400, 32, "RW", build_coverage(uvm_cvr_addr_map)); if (has_coverage(uvm_cvr_addr_map)) cg_addr = new(); function virtual function void sample(uvm_reg_addr_t offset, bit is_read, uvm_reg_map map); if (get_coverage(uvm_cvr_addr_map)) m_offset = offset; cg_addr.sample(); function `uvm_object_utils(basic_blk_dma_mem) class And when coverage is on or a for block(basic_blk) following coverage code will be generated for basic_blk block: classbasic_blk_block exts uvm_reg_block; randbasic_blk_dma_memdma_mem; rand basic_blk_reg1 reg1; localuvm_reg_addr_tm_offset; covergroupcg_addr; basic_blk_dma_mem :coverpointm_offset { bins hit = { ['h2000 : 'h23ff] }; } basic_blk_reg1 :coverpointm_offset { bins hit = { 'h2400 }; } function new(string name = "basic_blk"); super.new(name, build_coverage(uvm_cvr_addr_map)); if (has_coverage(uvm_cvr_addr_map)) cg_addr = new(); function virtual function void build();..... function virtual function void sample(uvm_reg_addr_t offset, bit is_read, uvm_reg_map map); if (get_coverage(uvm_cvr_addr_map)) m_offset = offset; cg_addr.sample(); function `uvm_object_utils(basic_blk_block) class :basic_blk_block 4

5 Customize Auto-generated Coverage User can also customize the auto generated covergroups of coverage types a, b or f by adding bins to the coverpoints, include new coverpoints or include cross between different coverpoints in the covergroups. IDS provide the customization of such auto-generated coverage code. In IDS this is possible using *uvm+ <custom code>*/uvm+ tags. Through this user can modify/customize the covergroups, coverpoints that are automatically generated for a, b and f coverage types. The entire syntax is as follows: [uvmloc = (coverpoint/covergroup).(abf/b/f/a).(rd/wr) ] <user code> where, rd or wr is optional. If wr or rd is not mentioned then the code inside uvm tags will be added for both read and write access type covergroups/coverpoints. In this syntax, a is valid only for blocks and memories, b is valid for registers and f for fields/registers. User can specify this in block as well, which IDS interprets that it will be for all the registers inside the block i.e. it is by default hierarchical. User can also specify individually for each or particular register, memory or register-file. If user has specified both in block as well as in register, IDS will take which is nearest to it i.e. the [uvm] tags mentioned in the register. For examples: [uvmloc=coverpoint.b] ignore_binsig_b = {1,2}; This will generate the code inside it for all the Register bits coverpoints: covergroupwr_cg_bits; field_0: coverpoint {m_current[0],m_data[0]} iff (!m_is_read&&m_be[0]) { ignore_bins ig_b1 = {1,2}; } covergrouprd_cg_bits; field_0: coverpoint {m_current[0],m_data[0]} iff (m_is_read&&m_be[0]) { ignore_bins ig_b1 = {1,2}; } Using ignore_bins ig_b1 =,1,2-; auto bins auto*1+ & auto*2+ won t be generated. [uvmloc= coverpoint.f.rd] binssome_range = [0:3] }; This will generate the code inside it for read access of Field Values coverpoints: covergrouprd_cg_vals; fld1: coverpointfld1.value[31:0]{ binssome_range = { [0:3] }; } [uvmloc= covergroup.f.wr] my_cross: cross cpt_field0, cpt_field1; 5

6 Through this user can make own coverpoints and cross inside the auto generated covergroups for register bits and fields. covergroupwr_cg_vals; my_cross: cross cpt_field0, cpt_field1; User-Defined Coverage But, often these default coverage types provided by UVM are not enough. What if the user has specific coverage code that needs to be generated? In IDS, it is possible to generate the user-defined coverage code and also control the covergroups included in the coverage of that element in the auto-generated register or block UVM Register Model classes. Following are the steps/controls that IDS provides for generating the user-defined coverage code: Mention the Coverage Identifiers and their "one-hot" values. Coverage Identifiers are the identifiers for the user defined covergroups which the user wants to include in the UVM register model. Through these identifiers user can control the coverage. For details about how it is controlled, please refer the UVM User Guide 1.1. In IDS, user can specify all the identifiers globally at the top level of the register specification in the block description using a property, as follows: {uvm.user_coverage= <IDENTIFIER_NAME1>:<its_value>, <IDENTIFIER_NAME2>:<its_value> } This will generate an enum of type uvm_reg_cvr_t typedefenumuvm_reg_cvr_t { COV_ID_1 = 'h01000, COV_ID_2 = 'h02000, COV_ID_3 = 'h04000 } my_uvm_coverage_model_e; Note: Values of the coverage identifiers should be one-hot values. This is to avoid collisions with pre-defined UVM, vor-defined, and user-defined coverage modelidentifiers, bits 0 through 7 are reserved for UVM, bits 8 through 15 are reserved for vors, and bits 16through 23 are reserved for users. Linking the Covergroups and Its respective Identifiers. Using IDS user can write the user-defined coverage code inside the uvm tags, [uvm]<>. That code will be automatically included in the component class of that register or block. In UVM, user has to link its covergroup with the coverage Identifier, in order to include that covergroup(s) in the coverage database on running simulation 6

7 environment.in IDS, user has to add the coverage identifier in the comment like a pragma in the first line of thecovergroup, inside the [uvm] tags for register/block,using property user_coverage=<identifier> or uvm.user_coverage=<identifier>, as follows : [uvm] covergroup cg_vals_my_cov1; //user_coverage=<identifier_name1> covergroup cg_vals_my_cov2; //uvm.user_coverage=<identifier_name2>, <IDENTIFIER_NAME3>,.. In UVM Register Model, this willinclude code for coverage in new() function of register/block and also create the sample() and sample_values() functions for the user defined covergroup(s). classmy_reg exts uvm_reg; `uvm_object_utils(my_reg).... //USER-CODE START covergroup cg_vals_my_cov1; // user_coverage=cov_id_1 fld1: coverpointfld1.value[7:0]{ binshdmi_dvi_bin = fld1.value [0:3]; binsmipi_bin = fld1.value[7] ; } covergroup cg_vals_my_cov2; // user_coverage= COV_ID_2, COV_ID_3 fld2: coverpointfld1.value[8:31] { binshdmi_dvi_bin = fld1.value [24:8]; binsmipi_bin = fld1.value[28] ; } function new(); if (has_coverage(cov_id_1)) cg_vals_my_cov1 = new(); if (has_coverage(cov_id_2)) cg_vals_my_cov2 = new(); if (has_coverage(cov_id_3)) cg_vals_my_cov2 = new(); function : new 7

8 virtual function void sample(uvm_reg_data_t data, uvm_reg_data_tbyte_en, bit is_read, uvm_reg_map map); function class super.sample(data, byte_en, is_read, map); if (get_coverage(cov_id_1)) cg_vals_my_cov1.sample(); if (get_coverage(cov_id_2)) cg_vals_my_cov2.sample(); if (get_coverage(cov_id_3)) cg_vals_my_cov2.sample(); virtual function void sample_values(); super.sample_values(); if (get_coverage(cov_id_1)) cg_vals_my_cov1.sample(); if (get_coverage(cov_id_2)) cg_vals_my_cov2.sample(); if (get_coverage(cov_id_3)) cg_vals_my_cov2.sample(); function Note: Single covergroup can link with multiple coverage identifiers or vice-versa. Control the user-defined coverage UVM provides a control for coverage collection where user can control for which identifiers containing covergroups are to be included in coverage database on running the simulation environment. In IDS, user has to add the identifier(s) linked to that covergroup(s) using the coverage property, where its value is separated by comma, : {coverage=f, <IDENTIFIER_NAME1>, <IDENTIFIER_NAME3> } In this case, coverage will be build for fields, bits and user-defined covergroup(s) which is/are linked to <IDENTIFIER_NAME1> and <IDENTIFIER_NAME3>, no matter there are multiple covergroups in that linked to the Identifier(s)in the UVMRegister Model. 8

9 In UVM register model,itwill create the add_coverage() for the listed coverage model identifiers. classmy_reg exts uvm_reg;... function new(string name = "my_reg"); super.new(name, 16, build_coverage(uvm_cvr_field_vals)); add_coverage(build_coverage(uvm_cvr_field_vals + COV_ID_1 + COV_ID_3)); function class Summary Property Value Component Code coverage a Block/Memory Covergroup: cg_addr f Register/Register Covergroups: rd_cg_vals& wr_cg_vals f.rd Register/Register Covergroup: rd_cg_vals f.wr Register/Register Covergroup: wr_cg_vals b Register/Register Covergroups: rd_cg_bits& wr_cg_bits b.rd Register/Register Covergroup: rd_cg_bits b.wr Register/Register Covergroup: wr_cg_bits IDENTIFIER_NAME1 Block/Register/R This is used to identify user, IDENTIFIER_NAME2 egiste/me defined covergroups., mory [uvmloc= covergroup.a] [uvmloc= covergroup.b.rd] [uvmloc= covergroup.b.wr] [uvmloc= covergroup.b] Memory/Block covergroupcg_addr; Register/Field covergrouprd_cg_bits; Register/Field covergroupwr_cg_bits; Register/Field covergrouprd_cg_bits; covergroupwr_cg_bits; [uvmloc= covergroup.f.rd] Register/Field covergrouprd_cg_vals; 9

10 [uvmloc= covergroup.f.wr] [uvmloc= covergroup.f] [uvmloc= coverpoint.f.rd] [uvmloc= coverpoint.f.wr] [uvmloc= coverpoint.f] [uvmloc= coverpoint.b.rd] [uvmloc= coverpoint.b.wr] [uvmloc= coverpoint.b] Register/Field covergroupwr_cg_vals; Register/Field covergrouprd_cg_vals; covergroupwr_cg_vals; Register/Field covergrouprd_cg_vals; fld1: coverpoint fld1.value[31:0]{ } Register/Field covergroupwr_cg_vals; fld1: coverpoint fld1.value[31:0]{ } Register/Field covergrouprd_cg_vals; fld1: coverpoint fld1.value[31:0]{ } covergroupwr_cg_vals; fld1: coverpoint fld1.value[31:0]{ } Register covergrouprd_cg_bits; field_0: coverpoint {m_current[0],m_data[0]} iff (!m_is_read&&m_be[0]) { } Register covergroupwr_cg_bits; field_0: coverpoint {m_current[0],m_data[0]} iff (!m_is_read&&m_be[0]) { } Register covergrouprd_cg_bits; field_0: coverpoint {m_current[0],m_data[0]} iff (!m_is_read&&m_be[0]) { } covergroupwr_cg_bits; field_0: coverpoint {m_current[0],m_data[0]} iff(!m_is_read&&m_be[0]) { } 10

11 [uvmloc= covergroup.(f/b/a).(wr/rd)] my_cross: cross cvpt1, cvpt2; uvm.user_coverage my_cross: cross cvpt1, cvpt2; <IDENTIFIER_NA ME1>:<its_value>,<IDENTIFIER_NA ME2>:<its_value> Block/Memory/R egister/field covergroup xxx; cvpt1: coverpoint ; my_cross: cross cvpt1, cvpt2; Block typedefenumuvm_reg_cvr_t { IDENTIFIER_NAME1 = 'h01000, IDENTIFIER_NAME2 = 'h02000, } my_uvm_coverage_model_e; 11

Getting Started with UVM. Agenda

Getting Started with UVM. Agenda Getting Started with UVM Vanessa Cooper Verification Consultant 1 Agenda Testbench Architecture Using the Configuration Database Connecting the Scoreboard Register Model: UVM Reg Predictor Register Model:

More information

Next Generation Design and Verification Today UVM REG: Path Towards Coverage Automation in AMS Simulations

Next Generation Design and Verification Today UVM REG: Path Towards Coverage Automation in AMS Simulations Next Generation Design and Verification Today UVM REG: Path Towards Coverage Automation in AMS Simulations Kyle Newman, Texas Instruments Agenda UVM REG Overview Automated UVM REG Generation UVM REG Support

More information

Functional Coverage Development Tips: Do s and Don ts by Samrat Patel, ASIC Verification Engineer, and Vipul Patel, ASIC Engineer, einfochips

Functional Coverage Development Tips: Do s and Don ts by Samrat Patel, ASIC Verification Engineer, and Vipul Patel, ASIC Engineer, einfochips Functional Coverage Development Tips: Do s and Don ts by Samrat Patel, ASIC Verification Engineer, and Vipul Patel, ASIC Engineer, einfochips INTRODUCTION A verification engineer s fundamental goal is

More information

IDesignSpec Quick Start Guide Version 3.9

IDesignSpec Quick Start Guide Version 3.9 IDesignSpec Quick Start Guide Version 3.9 Introduction... 3 Basic Concept... 3 Creating Specification... 3 IDS Word/OpenOffice Templates... 4 System... 4 Board... 4 Chip... 4 Block... 5 RegGroup... 5 Register...

More information

How to use IDesignSpec with UVM?

How to use IDesignSpec with UVM? 1 How to use IDesignSpec with UVM? This document discusses the use of IDesignSpec: Automatic Register Model Generator to generate a Register Model for an IP of SoC. Agnisys, Inc. 1255 Middlesex St. Unit

More information

SystemVerilog Functional Coverage

SystemVerilog Functional Coverage SystemVerilog Functional Coverage Ahmed Hemani System Architecture and Methodology Group Department of Electronic and Computer Systems School of ICT, KTH Functional Coverage Functional Coverage is used

More information

Practical experience in automatic functional coverage convergence and reusable collection infrastructure in UVM verification

Practical experience in automatic functional coverage convergence and reusable collection infrastructure in UVM verification Practical experience in automatic functional coverage convergence and reusable collection infrastructure in UVM verification Roman Wang, +8613482890029, Advanced Micro Devices, Inc., Shanghai, China (roman.wang@amd.com)

More information

Relieving the Parameterized Coverage Headache

Relieving the Parameterized Coverage Headache Relieving the Parameterized Coverage Headache Christine Lovett, Bryan Ramirez, Stacey Secatch Xilinx, Inc. 3100 Logic Dr. Longmont, CO 80503 cristi.lovett@xilinx.com, byran.ramirez@xilinx.com, stacey.secatch@xilinx.com

More information

How to Automate A Complete Register. Verification Environment

How to Automate A Complete Register. Verification Environment How to Automate A Complete Register Verification Environment Executive Summary Memory mapped registers provide re-configurability and control to an Intellectual Property Block (IP) or System on Chip design

More information

Self- Tuning Coverage

Self- Tuning Coverage Self- Tuning Coverage Jonathan Bromley 1 Overview Coverage reuse needs flexibility, configurability SELF TUNING in response to configuration, parameters etc Coverage can mislead! SV covergroups are not

More information

Practical Experience in Automatic Functional Coverage Convergence and Reusable Collection Infrastructure in UVM

Practical Experience in Automatic Functional Coverage Convergence and Reusable Collection Infrastructure in UVM Practical Experience in Automatic Functional Coverage Convergence and Reusable Collection Infrastructure in UVM Roman Wang roman.wang@amd.com Suresh Babu & Mike Bartley sureshbabu.p@testandverification.com

More information

Automated Generation of Functional Coverage Metrics for Input Stimulus by Mike Andrews, Verification Technologist, Mentor Graphics

Automated Generation of Functional Coverage Metrics for Input Stimulus by Mike Andrews, Verification Technologist, Mentor Graphics Automated Generation of Functional Coverage Metrics for Input Stimulus by Mike Andrews, Verification Technologist, Mentor Graphics Questa infact intelligent testbench automation has allowed many verification

More information

BRINGING CONTINUOUS DOMAIN INTO SYSTEMVERILOG COVERGROUPS

BRINGING CONTINUOUS DOMAIN INTO SYSTEMVERILOG COVERGROUPS BRINGING CONTINUOUS DOMAIN INTO SYSTEMVERILOG COVERGROUPS Prabal K Bhattacharya Cadence Design Systems 2655 Seely Avenue, San Jose, USA 1-408-894-2508 prabal@cadence.com Swapnajit Chakraborti Cadence Design

More information

package uvm_svid_monitor_package; import uvm_pkg::*; // //svid_transmit_packet_configuration

package uvm_svid_monitor_package; import uvm_pkg::*; // //svid_transmit_packet_configuration `include "uvm_macros.svh" package uvm_svid_monitor_package; import uvm_pkg::*; //---------------------------------------------------------- //svid_transmit_packet_configuration //----------------------------------------------------------

More information

Perplexing Parameter Permutation Problems? Immunize Your Testbench

Perplexing Parameter Permutation Problems? Immunize Your Testbench Immunize Your Testbench Alex Melikian Paul Marriott Verilab Montreal, Quebec, Canada verilab.com @verilab ABSTRACT RTL parameters are used frequently in designs, especially IPs, in order to increase flexibility

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

SVA in a UVM Class-based Environment by Ben Cohen, author, consultant, and trainer

SVA in a UVM Class-based Environment by Ben Cohen, author, consultant, and trainer SVA in a UVM Class-based Environment by Ben Cohen, author, consultant, and trainer INTRODUCTION Verification can be defined as the check that the design meets the requirements. How can this be achieved?

More information

UVM-RAL: Registers on demand Elimination of the unnecessary

UVM-RAL: Registers on demand Elimination of the unnecessary UVM-RAL: Registers on demand Elimination of the unnecessary Sailaja Akkem Microsemi Corporation, Hyderabad Accellera Systems Initiative 1 Agenda UVM RAL high level overview. Conventional Register Modelling.

More information

Verification Planning with Questa Verification Management

Verification Planning with Questa Verification Management Verification Planning with Questa Verification Management by Kishan Kalavadiya and Bhavinkumar Rajubhai Patel, einfochips Verification of complex SoC (System on Chip) requires tracking of all low level

More information

This slide, and the following two, are lifted directly from another Verilab paper from DVCon 2015 in which Mark Litterick described many of the

This slide, and the following two, are lifted directly from another Verilab paper from DVCon 2015 in which Mark Litterick described many of the 1 2 This slide, and the following two, are lifted directly from another Verilab paper from DVCon 2015 in which Mark Litterick described many of the pitfalls caused by careless, thoughtless or even dishonest

More information

Guidelines for uploading and downloading documents through Logicaldoc

Guidelines for uploading and downloading documents through Logicaldoc 1: Logging in into Logicaldoc 1.1 Use this URL for login: http://172.16.2.9:8080/logicaldoc/ 2.1 Enter login id and password and click on Sign In Following window will appear after logging in: 2: Creating

More information

166 SystemVerilog Assertions Handbook, 4th Edition

166 SystemVerilog Assertions Handbook, 4th Edition 166 SystemVerilog Assertions Handbook, 4th Edition example, suppose that a cache controller performs behavior A when there is a cache hit (e.g., fetch data from the cache), or performs behavior B when

More information

An Introduction to the Unified Coverage Interoperability Standard UCIS Technical Committee

An Introduction to the Unified Coverage Interoperability Standard UCIS Technical Committee An Introduction to the Unified Coverage Interoperability Standard UCIS Technical Committee Motivation for UCIS Verification is hard -

More information

UCIS APPLICATIONS: IMPROVING VERIFICATION PRODUCTIVITY, SIMULATION THROUGHPUT, AND COVERAGE CLOSURE PROCESS

UCIS APPLICATIONS: IMPROVING VERIFICATION PRODUCTIVITY, SIMULATION THROUGHPUT, AND COVERAGE CLOSURE PROCESS UCIS APPLICATIONS: IMPROVING VERIFICATION PRODUCTIVITY, SIMULATION THROUGHPUT, AND COVERAGE CLOSURE PROCESS Ahmed Yehia Mentor Graphics Corp. Cairo, Egypt ahmed_yehia@mentor.com ABSTRACT Given today s

More information

CiviX Author Custom Actions Cheat Sheet

CiviX Author Custom Actions Cheat Sheet Amendment Bylaw Elements CiviX Author Custom Actions Cheat Sheet 1 Alt + 6 Add Amendment Explanatory Note Add an amendment explan note which explains the purpose of the amendment - Occurs above an amendment

More information

Creating Portable Stimulus Models with the Upcoming Accellera Standard

Creating Portable Stimulus Models with the Upcoming Accellera Standard Creating Portable Stimulus Models with the Upcoming Accellera Standard Part 3 Coverage in Portable Stimulus The Hardware/Software Interface Library Conclusion Srivatsa Vasudevan, Synopsys COVERAGE IN PORTABLE

More information

Lecture 10 Graph algorithms: testing graph properties

Lecture 10 Graph algorithms: testing graph properties Lecture 10 Graph algorithms: testing graph properties COMP 523: Advanced Algorithmic Techniques Lecturer: Dariusz Kowalski Lecture 10: Testing Graph Properties 1 Overview Previous lectures: Representation

More information

Yikes! Why is My SystemVerilog Still So Slooooow?

Yikes! Why is My SystemVerilog Still So Slooooow? DVCon-2019 San Jose, CA Voted Best Paper 1st Place World Class SystemVerilog & UVM Training Still So Slooooow? Cliff Cummings Sunburst Design, Inc. cliffc@sunburst-design.com www.sunburst-design.com John

More information

PL/SQL Developer and TOAD IDE Integration Configuration

PL/SQL Developer and TOAD IDE Integration Configuration PL/SQL Developer and TOAD IDE Integration Configuration SCM Solutions provides this document as a guideline only and does not guarantee error free usage of either ID integration solutions discussed in

More information

AP Computer Science. Gridworld, inheritance

AP Computer Science. Gridworld, inheritance AP Computer Science Gridworld, inheritance 1 Interfaces Establish a is-a relationship without code sharing One way of addressing the software crisis Allow dividing up a complex task all developers code

More information

UVM RAL: Registers on demand

UVM RAL: Registers on demand UVM RAL: Registers on demand Elimination of the Unnecessary* Sailaja Akkem MicroSemi Corporation Pvt. Ltd. Hyderabad, India sailaja.akkem@microsemi.com Abstract This paper puts forward a novel approach

More information

PG DIPLOMA COURSE IN VERIFICATION USING SYSTEMVERILOG & UVM NEOSCHIP TECHNOLOGIES

PG DIPLOMA COURSE IN VERIFICATION USING SYSTEMVERILOG & UVM NEOSCHIP TECHNOLOGIES PG DIPLOMA COURSE IN VERIFICATION USING SYSTEMVERILOG & UVM An Initiative by Industry Experts With Qualification from IITs and IISCs Address: NEOSCHIP TECHNOLOGIES 3rd Floor, Sai Durga Enclave, 1099/833-1,

More information

Context-Free Languages & Grammars (CFLs & CFGs) Reading: Chapter 5

Context-Free Languages & Grammars (CFLs & CFGs) Reading: Chapter 5 Context-Free Languages & Grammars (CFLs & CFGs) Reading: Chapter 5 1 Not all languages are regular So what happens to the languages which are not regular? Can we still come up with a language recognizer?

More information

width: 10, 20 or 40-bit interface maximum number of lanes in any direction

width: 10, 20 or 40-bit interface maximum number of lanes in any direction MIPI LLI Verification using Questa Verification IP by Vaibhav Gupta, Lead Member Technical Staff and Yogesh Chaudhary, Consulting Staff, Mentor Graphics This article describes how incorporating LLI Questa

More information

Small, Maintainable Tests

Small, Maintainable Tests Small, Maintainable Tests by Ashley Winn, Sondrel IC Design Services In any verification environment it takes a significant amount of work to keep all the tests running and to ensure that each test continues

More information

(created by professor Marina Tanasyuk) FUNCTIONS

(created by professor Marina Tanasyuk) FUNCTIONS FUNCTIONS (created by professor Marina Tanasyuk) In C++, a function is a group of statements that is given a name, and which can be called from some point of the program. The most common syntax to define

More information

CSE Computer Architecture I Fall 2011 Homework 07 Memory Hierarchies Assigned: November 8, 2011, Due: November 22, 2011, Total Points: 100

CSE Computer Architecture I Fall 2011 Homework 07 Memory Hierarchies Assigned: November 8, 2011, Due: November 22, 2011, Total Points: 100 CSE 30321 Computer Architecture I Fall 2011 Homework 07 Memory Hierarchies Assigned: November 8, 2011, Due: November 22, 2011, Total Points: 100 Problem 1: (30 points) Background: One possible organization

More information

FP&A Simulation. A Complete Step-by-Step Guide. Ray Salemi

FP&A Simulation. A Complete Step-by-Step Guide. Ray Salemi FP&A Simulation A Complete Step-by-Step Guide Ray Salemi Contents Acknowledgments vii Foreword ix Preface xi The Boiled Frog 1 A Boiled Story 3 Root Cause Analysis 4 The "Verification Complete" Milestone

More information

Detecting Boundary Condition Bugs through System Verilog Functional Coverage Jayabrata Chakraborty HCL Technologies Ltd. Noida, India.

Detecting Boundary Condition Bugs through System Verilog Functional Coverage Jayabrata Chakraborty HCL Technologies Ltd. Noida, India. Detecting Boundary Condition Bugs through System Verilog Functional Coverage Jayabrata Chakraborty HCL Technologies Ltd. Noida, India. November,2008 Abstract This document describes the necessity to identify

More information

The Verification Future needs an Easier UVM

The Verification Future needs an Easier UVM Verification Futures The Verification Future needs an Easier UVM John Aynsley, CTO, Doulos 1 The Verification Future needs an Easier UVM Motivation Introducing Easier UVM Coding Guidelines Code Generation

More information

C expressions. (Reek, Ch. 5) 1 CS 3090: Safety Critical Programming in C

C expressions. (Reek, Ch. 5) 1 CS 3090: Safety Critical Programming in C C expressions (Reek, Ch. 5) 1 Shift operations Left shift: value > n Two definitions: logical version: discard the n

More information

Welcome to Fetch. Welcome 3. Connect Fetch to your home Wi-Fi 4. Tips to improve Wi-Fi in your home 8. Can t connect to Wi-Fi 10

Welcome to Fetch. Welcome 3. Connect Fetch to your home Wi-Fi 4. Tips to improve Wi-Fi in your home 8. Can t connect to Wi-Fi 10 Wi-Fi User Guide Welcome to Fetch Welcome 3 Connect Fetch to your home Wi-Fi 4 Tips to improve Wi-Fi in your home 8 Can t connect to Wi-Fi 10 Advanced Wi-Fi troubleshooting 1 Welcome This guide will help

More information

Contents 1 Introduction 2 Functional Verification: Challenges and Solutions 3 SystemVerilog Paradigm 4 UVM (Universal Verification Methodology)

Contents 1 Introduction 2 Functional Verification: Challenges and Solutions 3 SystemVerilog Paradigm 4 UVM (Universal Verification Methodology) 1 Introduction............................................... 1 1.1 Functional Design Verification: Current State of Affair......... 2 1.2 Where Are the Bugs?.................................... 3 2 Functional

More information

UVM-SystemC Standardization Status and Latest Developments

UVM-SystemC Standardization Status and Latest Developments 2/27/2017 UVM-SystemC Standardization Status and Latest Developments Trevor Wieman, SystemC CCI WG Chair Slides by Michael Meredith, Cadence Design Systems 2 Outline Why UVM-SystemC? UVM layered architecture

More information

Figure 1: Organisation for 128KB Direct Mapped Cache with 16-word Block Size and Word Addressable

Figure 1: Organisation for 128KB Direct Mapped Cache with 16-word Block Size and Word Addressable Tutorial 12: Cache Problem 1: Direct Mapped Cache Consider a 128KB of data in a direct-mapped cache with 16 word blocks. Determine the size of the tag, index and offset fields if a 32-bit architecture

More information

1Identify and generate

1Identify and generate Then You related arithmetic sequences to linear functions. (Lesson -5) Now Geometric Sequences as Exponential Functions 1Identify and generate geometric sequences. 2Relate geometric sequences to exponential

More information

Effective SystemVerilog Functional Coverage: design and coding recommendations

Effective SystemVerilog Functional Coverage: design and coding recommendations : design and coding recommendations Jonathan Bromley 1, Mark Litterick 2 (1) Verilab Ltd, Oxford, England (2) Verilab GmbH, Munich, Germany www.verilab.com ABSTRACT This paper gives practical recommendations

More information

Visit ::: Original Website For Placement Papers. ::: Data Structure

Visit  ::: Original Website For Placement Papers. ::: Data Structure Data Structure 1. What is data structure? A data structure is a way of organizing data that considers not only the items stored, but also their relationship to each other. Advance knowledge about the relationship

More information

5 th Grade Math Pacing Guide

5 th Grade Math Pacing Guide 00-0 First Nine Weeks Lessons - A Compose and order integers, decimals to the nearest ten thousandths, like and B C Identify factors and multiples of whole numbers F A C D D Determine the value of variables

More information

CSE Computer Architecture I Fall 2009 Homework 08 Pipelined Processors and Multi-core Programming Assigned: Due: Problem 1: (10 points)

CSE Computer Architecture I Fall 2009 Homework 08 Pipelined Processors and Multi-core Programming Assigned: Due: Problem 1: (10 points) CSE 30321 Computer Architecture I Fall 2009 Homework 08 Pipelined Processors and Multi-core Programming Assigned: November 17, 2009 Due: December 1, 2009 This assignment can be done in groups of 1, 2,

More information

COMP 110/401 WINDOWS COMMAND INTERPRETER. Instructor: Prasun Dewan (FB 150,

COMP 110/401 WINDOWS COMMAND INTERPRETER. Instructor: Prasun Dewan (FB 150, COMP 110/401 WINDOWS COMMAND INTERPRETER Instructor: Prasun Dewan (FB 150, dewan@unc.edu) WINDOWS COMMAND INTERPRETER 2 COMMAND INTERPRETER? Interprets Command Lines Provides alternative to (OS and Application)

More information

Verification of I2C module for Multiprotocol Serial Controller

Verification of I2C module for Multiprotocol Serial Controller e-issn 2455 1392 Volume 2 Issue 4, April 2016 pp. 548-555 Scientific Journal Impact Factor : 3.468 http://www.ijcter.com Verification of I2C module for Multiprotocol Serial Controller Subham Punit Patro1,

More information

Geometry. Zachary Friggstad. Programming Club Meeting

Geometry. Zachary Friggstad. Programming Club Meeting Geometry Zachary Friggstad Programming Club Meeting Points #i n c l u d e typedef complex p o i n t ; p o i n t p ( 1. 0, 5. 7 ) ; p. r e a l ( ) ; // x component p. imag ( ) ; // y component

More information

JAVA An overview for C++ programmers

JAVA An overview for C++ programmers JAVA An overview for C++ programmers Wagner Truppel wagner@cs.ucr.edu edu March 1st, 2004 The early history James Gosling, Sun Microsystems Not the usual start for a prog.. language Consumer electronics,

More information

VMM PRIMER. Using the Register Abstraction Layer. Author(s): Janick Bergeron. Updated By: John Choi. Brett Kobernat. Version 1.

VMM PRIMER. Using the Register Abstraction Layer. Author(s): Janick Bergeron. Updated By: John Choi. Brett Kobernat. Version 1. VMM PRIMER Using the Register Abstraction Layer Author(s): Janick Bergeron Updated By: John Choi Brett Kobernat Version 1.4 / March 27, 2008 VMM Primer Using the Register Abstraction Layer 1 Introduction

More information

CS 152 Computer Architecture and Engineering

CS 152 Computer Architecture and Engineering CS 152 Computer rchitecture and Engineering Lecture 10 Pipelining III 2005-2-17 John Lazzaro (www.cs.berkeley.edu/~lazzaro) Ts: Ted Hong and David arquardt www-inst.eecs.berkeley.edu/~cs152/ Last time:

More information

Block & Inline Elements

Block & Inline Elements Block & Inline Elements Every tag in HTML can classified as a block or inline element. > Block elements always start on a new line (Paragraph, List items, Blockquotes, Tables) > Inline elements do not

More information

Review. Steps to writing (stateless) circuits: Create a logic function (one per output)

Review. Steps to writing (stateless) circuits: Create a logic function (one per output) MIPS ALU Review Steps to writing (stateless) circuits: Create a truth table Go through all different combinations of inputs For each row, generate each output based on the problem description Create a

More information

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

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

More information

VERIFICATION HORIZONS

VERIFICATION HORIZONS A College Championship, Our NBA Finals Expectations, and Dreaded Feature Creep By Tom Fitzpatrick, Editor and Verification Technologist VERIFICATION HORIZONS A PUBLICATION OF MENTOR, A SIEMENS BUSINESS

More information

COS 126 Midterm 1 Written Exam Fall 2012

COS 126 Midterm 1 Written Exam Fall 2012 Name:!! Login ID:!!! Precept: COS 126 Midterm 1 Written Exam Fall 2012 is test has 8 questions, weighted as indicated. e exam is closed book, except that you are allowed to use a one page single-sided

More information

Polygons in the Coordinate Plane

Polygons in the Coordinate Plane Polygons in the Coordinate Plane LAUNCH (8 MIN) Before How can you find the perimeter of the sandbox that the park worker made? During How will you determine whether the park worker s plan for the sandbox

More information

PCIe Dual Port Gigabit Server. Adapter

PCIe Dual Port Gigabit Server. Adapter PCIe Dual Port Gigabit Server Adapter User Manual Ver. 2.01 All brand names and trademarks are properties of their respective owners. Contents: Chapter 1: Introduction... 3 1.1 Product Introduction...

More information

Simplified UVM for FPGA Reliability UVM for Sufficient Elemental Analysis in DO-254 Flows by Shashi Bhutada, Mentor Graphics

Simplified UVM for FPGA Reliability UVM for Sufficient Elemental Analysis in DO-254 Flows by Shashi Bhutada, Mentor Graphics Simplified UVM for FPGA Reliability UVM for Sufficient Elemental Analysis in DO-254 Flows by Shashi Bhutada, Mentor Graphics INTRODUCTION DO-254 and other safety critical applications require meticulous

More information

Caching Prof. James L. Frankel Harvard University. Version of 5:16 PM 5-Apr-2016 Copyright 2016 James L. Frankel. All rights reserved.

Caching Prof. James L. Frankel Harvard University. Version of 5:16 PM 5-Apr-2016 Copyright 2016 James L. Frankel. All rights reserved. Caching Prof. James L. Frankel Harvard University Version of 5:16 PM 5-Apr-2016 Copyright 2016 James L. Frankel. All rights reserved. Memory Hierarchy Extremely limited number of registers in CPU Lots

More information

EECS 4340: Computer Hardware Design Unit 4: Validation

EECS 4340: Computer Hardware Design Unit 4: Validation EECS 4340: Unit 4: Validation Prof. Simha Sethumadhavan Reference Book: System Verilog for Verification Agenda Last Unit Design abstractions Basic primitives This Unit Validation Forthcoming Design Tips

More information

I-7530 Series FAQ. ICP DAS Co., LTD 1

I-7530 Series FAQ. ICP DAS Co., LTD 1 I-7530 Series FAQ Q1 How do I configure the I-7530, such as baud, Acceptance Code, Acceptance Mask and so forth? (2011/1/5,Bear)... 3 Q2 How does these two parameter, Acceptance Code and Acceptance Mask,

More information

by Kalagaan What is VertExmotion? VertExmotion is a shader based softbody system coupled with a procedural animation system.

by Kalagaan What is VertExmotion? VertExmotion is a shader based softbody system coupled with a procedural animation system. by Kalagaan What is VertExmotion? VertExmotion is a shader based softbody system coupled with a procedural animation system. You can easily animate parts of your mesh like hair, cloths, fatness... within

More information

SIMPLE INPUT and OUTPUT:

SIMPLE INPUT and OUTPUT: SIMPLE INPUT and OUTPUT: (A) Printing to the screen. The disp( ) command. If you want to print out the values of a variable to the screen, you simply can type the variable at the command line. > x = 5

More information

Computer Organization. Structure of a Computer. Registers. Register Transfer. Register Files. Memories

Computer Organization. Structure of a Computer. Registers. Register Transfer. Register Files. Memories Computer Organization Structure of a Computer Computer design as an application of digital logic design procedures Computer = processing unit + memory system Processing unit = control + Control = finite

More information

Constrained Random Data Generation Using SystemVerilog

Constrained Random Data Generation Using SystemVerilog Constrained Random Data Generation Using SystemVerilog Tim Pylant, Cadence Design Systems, Inc. 1 Ideal Stimulus Generation Need a way to generate stimulus without long, manual process Data should be random

More information

Incisive Coverage Introduction and RAK Overview

Incisive Coverage Introduction and RAK Overview Incisive Coverage Introduction and RAK Overview This also includes Incisive 12.2 workshop/labs overview 2013 Cadence Design Systems, Inc. Coverage Workshop Agenda Introduction to Metric-Driven Verification

More information

Overview The Auto Number functionality allows users to configure auto numbering on an Attribute for a specific Entity within Dynamics 365.

Overview The Auto Number functionality allows users to configure auto numbering on an Attribute for a specific Entity within Dynamics 365. Overview The Auto Number functionality allows users to configure auto numbering on an Attribute for a specific Entity within Dynamics 365. An Auto Number Header will need to be created. This allows you

More information

Portable VHDL Testbench Automation with Intelligent Testbench Automation by Matthew Ballance, Mentor Graphics

Portable VHDL Testbench Automation with Intelligent Testbench Automation by Matthew Ballance, Mentor Graphics Portable VHDL Testbench Automation with Intelligent Testbench Automation by Matthew Ballance, Mentor Graphics We ve come a long way since digital designs were sketched as schematics by hand on paper and

More information

UVM Tips and Tricks - Runtime Tips

UVM Tips and Tricks - Runtime Tips 2014-2016, www.verifworks.com UVM Tips and Tricks - Runtime Tips Presented by Srivatsa Vasudevan - Synopsys, Inc. Slides by Srinivasan Venkataramanan, VerifWorks 2014-2016, www.verifworks.com 2 UVM TB

More information

DRAFT. Technical Note. MxMessageSystem

DRAFT. Technical Note. MxMessageSystem Technical Note MxMessageSystem 1. Abstract The MxMessageSystem is a communication system where participants can send and receive messages. A message is distributed to all participants. The MxMessageSystem

More information

Using Dreamweaver CC. 6 Styles in Websites. Exercise 1 Linked Styles vs Embedded Styles

Using Dreamweaver CC. 6 Styles in Websites. Exercise 1 Linked Styles vs Embedded Styles Using Dreamweaver CC 6 So far we have used CSS to arrange the elements on our web page. We have also used CSS for some limited formatting. In this section we will take full advantage of using CSS to format

More information

Data Storage. August 9, Indiana University. Geoffrey Brown, Bryce Himebaugh 2015 August 9, / 19

Data Storage. August 9, Indiana University. Geoffrey Brown, Bryce Himebaugh 2015 August 9, / 19 Data Storage Geoffrey Brown Bryce Himebaugh Indiana University August 9, 2016 Geoffrey Brown, Bryce Himebaugh 2015 August 9, 2016 1 / 19 Outline Bits, Bytes, Words Word Size Byte Addressable Memory Byte

More information

Premiere Pro Manual Basics - Toolbars, Options and Panels

Premiere Pro Manual Basics - Toolbars, Options and Panels Premiere Pro Manual 01 - Basics - Toolbars, Options and Panels 2017 1st edition This Premiere Pro Manual is one of an introductory series specially written for the Arts and Humanities Students at UEA by

More information

NationBuilder Handbook: How to get the most out of your database

NationBuilder Handbook: How to get the most out of your database NationBuilder Handbook: How to get the most out of your database Table of Contents Introduction... 1 Creating an Account & Accessing NationBuilder... 2 Profiles & Logging Information... 2 Finding & Tagging

More information

My Testbench Used to Break! Now it Bends: Adapting to Changing Design Configurations

My Testbench Used to Break! Now it Bends: Adapting to Changing Design Configurations My Testbench Used to Break! Now it Bs: Adapting to Changing Design Configurations Jeff Vance, Jeff Montesano, Kevin Vasconcellos, Kevin Johnston Verilab Inc. 609 Castle Ridge Road Suite 210, Austin, TX

More information

18-642: Code Style for Compilers

18-642: Code Style for Compilers 18-642: Code Style for Compilers 9/25/2017 1 Anti-Patterns: Coding Style: Language Use Code compiles with warnings Warnings are turned off or over-ridden Insufficient warning level set Language safety

More information

Quintiq Projects. Release Notes 2016 Release 5 03 Sep QP/People Team

Quintiq Projects. Release Notes 2016 Release 5 03 Sep QP/People Team Quintiq Projects Release Notes 2016 Release 5 03 Sep 2016 QP/People Team. All rights reserved. Quintiq is a registered mark of Quintiq Holding B.V. Agenda Main Changes/Features Conversion and Data Changes

More information

Blog Pro for Magento 2 User Guide

Blog Pro for Magento 2 User Guide Blog Pro for Magento 2 User Guide Table of Contents 1. Blog Pro Configuration 1.1. Accessing the Extension Main Setting 1.2. Blog Index Page 1.3. Post List 1.4. Post Author 1.5. Post View (Related Posts,

More information

Version 4.30 changes

Version 4.30 changes Version 4.30 changes Verbiage has been changed on the Print Accumulated Checks window: Print Void Check has been changed to Void Check (Print). A new Utility Setting is available that will prevent the

More information

Typesetting spectral sequences in L A TEX with luasseq.sty

Typesetting spectral sequences in L A TEX with luasseq.sty Typesetting spectral sequences in L A TEX with luasseq.sty Tilman Bauer November 6, 1 1 Introduction The present package, luasseq, facilitates the typesetting of mathematical objects called spectral sequence

More information

Module 4: Advanced Development

Module 4: Advanced Development Module 4: Advanced Development Objective Create and build a Standard Make Project from source files in CVS Contents Version control Standard Make Projects Fortran Refactoring Searching LACSI 2006 Version

More information

Agilent LC Firmware. Background information. Status: August 2017

Agilent LC Firmware. Background information. Status: August 2017 Agilent LC Firmware Background information Status: August 2017 1 Overview The following slide deck provides background information to - Customers - Partners - Non-Agilent Chromatographic Data System providers

More information

Import Statements, Instance Members, and the Default Constructor

Import Statements, Instance Members, and the Default Constructor Import Statements, Instance Members, and the Default Constructor Introduction In this article from my free Java 8 course, I will be discussing import statements, instance members, and the default constructor.

More information

KENTUCKY YOUTH SOCCER ASSOCIATION

KENTUCKY YOUTH SOCCER ASSOCIATION Table of Contents Stack Sports TIPS... 2 Setting Up/Opening Player Registration... 3-12 Registration Forms... 3-4 Creating Folders (Tree Builder/Copy/Roll Forward)... 4 Stack Sports Quick Resource Links...

More information

Appendix B Boost.Python

Appendix B Boost.Python Financial Modelling in Python By S. Fletcher & C. Gardner 2009 John Wiley & Sons Ltd Appendix B Boost.Python The Boost.Python library provides a framework for seamlessly wrapping C++ classes, functions

More information

List of Code Samples. xiii

List of Code Samples. xiii xiii List of Code Samples Sample 1-1 Driving the APB pins 16 Sample 1-2 A task to drive the APB pins 17 Sample 1-3 Low-level Verilog test 17 Sample 1-4 Basic transactor code 21 Sample 2-1 Using the logic

More information

Programming. We will be introducing various new elements of Python and using them to solve increasingly interesting and complex problems.

Programming. We will be introducing various new elements of Python and using them to solve increasingly interesting and complex problems. Plan for the rest of the semester: Programming We will be introducing various new elements of Python and using them to solve increasingly interesting and complex problems. We saw earlier that computers

More information

Functions and Inverses ID1050 Quantitative & Qualitative Reasoning

Functions and Inverses ID1050 Quantitative & Qualitative Reasoning Functions and Inverses ID1050 Quantitative & Qualitative Reasoning Function and Inverse Function Gun Analogy Functions take a number, perform an operation on it, and return another number. The inverse

More information

Utica First Agency Link Quick Tips

Utica First Agency Link Quick Tips Utica First Agency Link Quick Tips Initial Login The Agency Link Login Screen accepts the entry of your User ID (for example, UISAgent) followed by your password (remember your password is case sensitive).

More information

C PROGRAMMING QUESTIONS AND

C PROGRAMMING QUESTIONS AND 8/26/2011 C C PROGRAMMING QUESTIONS AND ANSWER http://cquestionbank.blogspot.com Ritesh kumar (1) What will be output if you will compile and execute the following c code? struct marks{ int p:3; int c:3;

More information

Using Dreamweaver CC. Logo. 4 Creating a Template. Page Heading. Page content in this area. About Us Gallery Ordering Contact Us Links

Using Dreamweaver CC. Logo. 4 Creating a Template. Page Heading. Page content in this area. About Us Gallery Ordering Contact Us Links Using Dreamweaver CC 4 Creating a Template Now that the main page of our website is complete, we need to create the rest of the pages. Each of them will have a layout that follows the plan shown below.

More information

CS162 Operating Systems and Systems Programming Lecture 14. Caching and Demand Paging

CS162 Operating Systems and Systems Programming Lecture 14. Caching and Demand Paging CS162 Operating Systems and Systems Programming Lecture 14 Caching and Demand Paging October 17, 2007 Prof. John Kubiatowicz http://inst.eecs.berkeley.edu/~cs162 Review: Hierarchy of a Modern Computer

More information

Assignment 3 Suggested solutions

Assignment 3 Suggested solutions ECE-250 Algorithms and Data Structures (Winter 2012) Assignment 3 Suggested solutions 1 - Provide the definition of a function swap nodes that swaps two elements in a doubly-linked list by readjusting

More information

A UVM-based AES IP Verification Platform with Automatic Testcases Generation

A UVM-based AES IP Verification Platform with Automatic Testcases Generation Advances in Engineering Research (AER), volume 82 2016 International Conference on Engineering and Advanced Technology (ICEAT-16) A UVM-based AES IP Verification Platform with Automatic Testcases Generation

More information