Digital VLSI Design Lecture 3 Logic Synthesis Part 1
课程主页:
http://www.eng.biu.ac.il/temanad/digital-vlsi-design/
课程视频:
https://www.youtube.com/watch?reload=9&v=RbZ3BXbd6_k&list=PLZU5hLL_713x0_AV_rVbay0pWmED7992G
https://www.bilibili.com/video/BV1EA411n7VQ?from=search&seid=14545899898143497364
这次回顾第三讲,这一讲介绍了逻辑综合。
介绍什么是逻辑综合
综合是将RTL转换为特定于技术的门级网表的过程,针对一组预定义的约束进行优化。
开始:
行为级RTL设计
标准单元库
设计约束的集合
结束:
门级网表,映射到标准单元库
希望在速度、面积、功率等方面也有高效。
具体来说
给定:$\boldsymbol{F}(X, Y, Z, \lambda, \delta)$
$X$:输入
$Y$:输出
$Z$:内部状态
$\lambda:X\times Z\to Z$(状 ...
The Hardware Software Interface Section 8 Processes
课程主页:https://courses.cs.washington.edu/courses/cse351/16sp/
课程资料:
实验部分:https://github.com/vuquangtrong/HW-SW_Interface_Course
实验说明:https://courses.cs.washington.edu/courses/cse351/13sp/lab-0.html
课件:http://academictorrents.com/details/b63a566df824b39740eb9754e4fe4c0140306f4b
课程视频:https://www.bilibili.com/video/BV1Zt411s7Gg?from=search&seid=8781593976070799647
这次回顾第八部分,这部分介绍了进程。
第8节:虚拟内存异常控制流控制流
处理器只做一件事:
从启动到关闭,CPU只需读取并执行(解释)一系列指令,一次一条命令
此序列是CPU的控制流
改变控制流
到目前为止,有两种用于更改控制流的机制:
跳跃和分支
call ...
The Hardware Software Interface Section 7 Memory and Caches
课程主页:https://courses.cs.washington.edu/courses/cse351/16sp/
课程资料:
实验部分:https://github.com/vuquangtrong/HW-SW_Interface_Course
实验说明:https://courses.cs.washington.edu/courses/cse351/13sp/lab-0.html
课件:http://academictorrents.com/details/b63a566df824b39740eb9754e4fe4c0140306f4b
课程视频:https://www.bilibili.com/video/BV1Zt411s7Gg?from=search&seid=8781593976070799647
这次回顾第七部分,这部分介绍了内存和缓存。
第7节:内存和缓存缓存基础知识执行时间和SIZE的关系int array[SIZE];
int A = 0;
for (int i = 0 ; i < 200000 ; ++ i) { ...
第5章 数的表示和算术电路
教材评价:
https://book.douban.com/subject/2308122/
下载地址:
http://m.wdfxw.net/Fulltext44364042.htm
这次回顾第5章:数的表示和算术电路。
无符号数的加法全加器的分解只对两个位(比特)进行加运算的电路叫做“半加器”,半加器的输出为和以及进位:
当多位(比特)数相加时,就需考虑前一位的进位,考虑如下例子:
所以完整的加法器,称为全加器,有三个输入$c_i,x_i,y_i$,其真值表,卡诺图以及电路图如下:
其中$\oplus$表示异或运算,即:
x_{1} \oplus x_{2}=\bar{x}_{1} x_{2}+x_{1} \bar{x}_{2}完整的公式如下:
\begin{aligned}
c_{i+1}&=x_{i} y_{i}+x_{i} c_{i}+y_{i} c_{i}\\
s_{i}&=x_{i} \oplus y_{i} \oplus c_{i}
\end{aligned}全加器的分解全加器可以分解为两个半加器:
行波进位加法器
有符号数负数符号——数值的表示法正数与负 ...
第4章 逻辑函数的优化
教材评价:
https://book.douban.com/subject/2308122/
下载地址:
http://m.wdfxw.net/Fulltext44364042.htm
这次回顾第4章:逻辑函数的优化。
专业术语
因子:给定的乘积项包含多个变量,每个变量可能会以原变量或者反变量的形式出现。变量(不论原变量还是反变量)的每一次出现都称为一个因子(literal)。
对于乘积项$\bar x_1 x_2$,一共有两个因子$\bar x_1, x_2$
蕴涵项:若某个乘积项能说明输入变量的取值组合可以使给定函数(输出)为$1$,则称该乘积项为该函数的蕴涵项(implicant)。
考虑如下函数:
蕴涵项为:$\bar{x}_{1} \bar{x}_{2} \bar{x}_{3},\bar{x}_{1} \bar{x}_{2} x_{3}, \bar{x}_{1} x_{2} \bar{x}_{3}, \bar{x}_{1} x_{2} x_{3},x_1x_2x_3,\bar{x}_{1} \bar{x}_{2},\bar{x}_{1} \bar{x}_{3} ...
第2章 逻辑电路入门
最近开始补充数字逻辑相关知识,选择的教材为《数字逻辑基础与Verilog设计》。
教材评价:
https://book.douban.com/subject/2308122/
下载地址:
http://m.wdfxw.net/Fulltext44364042.htm
后续会定期回顾重点章节,这次回顾第2章:逻辑门和逻辑网络。
逻辑门和逻辑网络逻辑门常用逻辑门:
逻辑网络的分析两个基本问题
分析:对已存在的逻辑网络,确认所实现的逻辑功能。
综合:设计一个新的网络,使该网络实现所要求的逻辑功能。
分析案例实现逻辑函数
f=\bar{x}_{1}+x_{1} \cdot x_{2}实现网络
真值表
时序图
简化网络注意有如下关系
\bar{x}_{1}+x_{1} \cdot x_{2}=\bar{x}_{1}+x_{2}于是得到如下简化的网络
布尔代数布尔代数公理1a. $0 \cdot 0=0$1b. $1+1=1$2a. $1 \cdot 1=1$2b. $0+0=0$3a. $0 \cdot 1=1 \cdot 0=0$3b. $1+0=0+1=1$4a. 若 $x=0, ...
The Hardware Software Interface Section 6 Arrays and Structs
课程主页:https://courses.cs.washington.edu/courses/cse351/16sp/
课程资料:
实验部分:https://github.com/vuquangtrong/HW-SW_Interface_Course
实验说明:https://courses.cs.washington.edu/courses/cse351/13sp/lab-0.html
课件:http://academictorrents.com/details/b63a566df824b39740eb9754e4fe4c0140306f4b
课程视频:https://www.bilibili.com/video/BV1Zt411s7Gg?from=search&seid=8781593976070799647
这次回顾第六部分,这部分介绍了数组和结构。
第6节:数组和结构数组分配和内存访问数组分配基本原则
T A [L];
上述声明表示数据类型为T,长度为L的数组
内存中是L*sizeof(T)个字节的连续分配区域
数组存取基本原则
T A [L];
上述声明表示 ...
Digital VLSI Design Lecture 2 Verilog
课程主页:
http://www.eng.biu.ac.il/temanad/digital-vlsi-design/
课程视频:
https://www.youtube.com/watch?reload=9&v=RbZ3BXbd6_k&list=PLZU5hLL_713x0_AV_rVbay0pWmED7992G
https://www.bilibili.com/video/BV1EA411n7VQ?from=search&seid=14545899898143497364
这次回顾第二讲,这一讲介绍了Verilog。
Verilog语法基本结构
原语:
not,and,or,etc
信号:
$4$种状态:$\text{0,1,X,Z}$
电线:不保持状态
寄存器:保持状态
可以表示总线或一组信号
```vhdlwire in1,in2;reg out;wire [7:0] data;reg [31:0] mem [0:7];//width (bits)=32,depth (words)=8
- 操作符
- 类似原语:
- $\ ...
Digital VLSI Design Lecture 1 Introduction
课程主页:
http://www.eng.biu.ac.il/temanad/digital-vlsi-design/
课程视频:
https://www.youtube.com/watch?reload=9&v=RbZ3BXbd6_k&list=PLZU5hLL_713x0_AV_rVbay0pWmED7992G
https://www.bilibili.com/video/BV1EA411n7VQ?from=search&seid=14545899898143497364
此课程是youtube上介绍芯片设计的课程,全面覆盖了芯片设计前端后端的整个流程,课程视频已搬运至b站。
这次回顾第一讲,这一讲介绍了芯片设计的整个流程。
制造一个芯片基本设计抽象芯片设计流程:
和设计计算机应用程序的类比:
系统级抽象(System Level)
高级行为的抽象算法描述
例如C语言
抽象,因为它不包含任何时间或数据的实现细节
高效地获得紧凑的执行模型作为设计初稿
整个项目难以维护,因为和实现没有关系
寄存器传输级别(Register Transfer Leve ...
The Hardware Software Interface Lab 2
课程主页:https://courses.cs.washington.edu/courses/cse351/16sp/
课程资料:
实验部分:https://github.com/vuquangtrong/HW-SW_Interface_Course
实验说明:https://courses.cs.washington.edu/courses/cse351/13sp/lab-0.html
课件:http://academictorrents.com/details/b63a566df824b39740eb9754e4fe4c0140306f4b
课程视频:https://www.bilibili.com/video/BV1Zt411s7Gg?from=search&seid=8781593976070799647
参考资料:https://www.runoob.com/cprogramming/c-function-strtol.html
https://github.com/HeLiangHIT/Hardware_Software_Interface/blob/f223721 ...
台交大信息论 Lecture 10
课程主页:https://ocw.nctu.edu.tw/course_detail-c.php?bgid=8&gid=0&nid=612&pid=973
http://shannon.cm.nctu.edu.tw/it18.htm
老师主页:http://shannon.cm.nctu.edu.tw/
课程视频:https://www.youtube.com/playlist?list=PLj6E8qlqmkFsWS54o6gNWeDGXeI7c3eUd
这次回顾第十讲,这一讲主要介绍了香农信道编码定理,对应视频17,18。
通过DMC进行数据传输的分组码
定长数据传输码给定正整数$n$和$M$,以及具有输入字母$\mathcal X$和输出字母$\mathcal Y$的离散信道,此信道的固定长度数据传输码(或块码)的块长为$n$,每个信道符号的速率为$\frac{1}{n} \log _{2} M$比特,块码用$\mathcal{C}_{n}=(n, M)$表示,由如下内容组成:
$M$个用于传输的消息的信息
编码函数
f:\{1,2, \ldots ...
Hexo博客报错(持续更新)
今天hexo写博客的时候每隔几个月都会碰到一点小错误,以后会将报错的解决方法统一更新在此处。
参考资料:https://github.com/hexojs/hexo/issues/2070
报错1报错内容:
Template render error: (unknown path) Error: expected end of comment, got end of file hexo
原因是生成了如下latex代码
$\text{%reg = Mem[address]}$
正确写法
$\%\text{reg = Mem[address]}$
之所以产生报错,是因为%在latex中是特殊字符。
报错2报错信息依然和之前相同,出错的位置代码如下:
\sum_{i=1}^{{x}-\text {lowbit}({x})}
正确代码:
\sum_{i=1}^{x-\text {lowbit ...