没有合适的资源?快使用搜索试试~ 我知道了~
A Brief Introduction to SystemVerilog Instructor.pdf
需积分: 5 0 下载量 63 浏览量
2024-05-11
14:40:53
上传
评论
收藏 981KB PDF 举报
温馨提示
试读
41页
A Brief Introduction to SystemVerilog Instructor
资源推荐
资源详情
资源评论
Spring 2015 :: CSE 502 – Computer Architecture
A Brief
Introduction to
SystemVerilog
Instructor: Nima Honarmand
(Slides adapted from Prof. Milder’s ESE-507 course)
Spring 2015 :: CSE 502 – Computer Architecture
First Things First
• Assume you are familiar with the basics of digital
logic design
– If not, you can read Appendix A of Hamacher et al.
• SystemVerilog is a superset of another HDL: Verilog
– Familiarity with Verilog (or even VHDL) helps a lot
• Useful SystemVerilog resources and tutorials on the
course project web page
– Including a link to a good Verilog tutorial
Spring 2015 :: CSE 502 – Computer Architecture
Hardware Description Languages
• Used for a variety of purposes in hardware design
– High-level behavioral modeling
– Register Transfer Level (RTL) behavioral modeling
– Gate and transistor level netlists
– Timing models for timing simulation
– Design verification and testbench development
– …
• Many different features to accommodate all of these
• We focus on RTL modeling for the course project
– Much simpler than designing with gates
– Still, helps you think like a hardware designer
Spring 2015 :: CSE 502 – Computer Architecture
HDLs vs. Programming Languages
• Have syntactically similar constructs:
– Data types, variables, assignments, if statements, loops, …
• But very different mentality and semantic model:
everything runs in parallel, unless specified otherwise
– Statement model hardware
– Hardware is inherently parallel
• Software programs are composed of subroutines(mostly)
– Subroutines call each other
– when in a callee, the caller’s execution is paused
• Hardware descriptions are composed of modules (mostly)
– A hierarchy of modules connected to each other
– Modules are active at the same time
Spring 2015 :: CSE 502 – Computer Architecture
Modules
• The basic building block in SystemVerilog
– Interfaces with outside using ports
– Ports are either input or output (for now)
5
module mymodule(a, b, c, f);
output f;
input a, b, c;
// Description goes here
endmodule
// alternatively
module mymodule(input a, b, c, output f);
// Description goes here
endmodule
all ports declared here
declare which
ports are inputs,
which are outputs
module name
剩余40页未读,继续阅读
资源评论
Neo的作战室
- 粉丝: 36
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Stability AI 发布 SD3 API:开启人工智能新篇章
- SQL 语言入门篇-最常用 SQL 语句大全
- mysql查询语句汇总.zip
- typora-x64-v0.9.93,windows,64位,markdown工具,文本编辑器
- 基于C语言的neon_osd_Draw ARM Neon加速OSD点阵设计源码
- 目标检测-工地工人安全设备佩戴检测数据集-3500张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本+训练日志
- 运筹学运输问题综合实验的实验报告
- home - 副本.vue
- imageProcess.py
- typora-linux-v0.11.18-amd64,linux,64位,markdown工具,文本编辑器
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功