Menu Close
%title缩略图

什么是变量

变量是程序可操作的存储区的名称。C 语言中每个变量都有特定的类型,类型决定变量存储的大小和布局,该范围内的值都可以存储在内存中,运算符可应用于变量上。

%title缩略图

C语言的架构

本程序由两个函数组成,主函数和 max 函数。函数之间是并列关系。可从主函数中调用其它函数。
max 函数的功能是比较两个数,然后把较大的数返回给主函数。max 函数是一个用户自定义函数。

%title缩略图

Verilog状态机设计与应用-2

线性序列机LSM(Linear sequence machine)可以看作是有限状态机的一种特例,当所描述的状态转移与时钟呈现出一种线性规律时,我们可以直接用时钟计数作为当前状态。

%title缩略图

Verilog状态机设计与应用-1

序列检测机在通信中应用非常广泛,尤其是在串行通信中,如何在一串连续01序列中找出需要通信帧的帧头,从而使整个数据帧同步起来。简单如UART找出start位,以太网通信中如何找到PREAMBLE和SFD等从而确定一个帧的开始。

%title缩略图

权值变换法实现16进制到BCD码转换-2

无论采用哪种变换,基本要求是转换后的数值与转换前的数值表达的含义不变,如X=4’b1111,转换成BCD码后为15,用两个4位二进制表示为 A=4’b0101, B =4’b0001, 其中A为低位, B为高位;B的权值为10,A的权值为1。

%title缩略图

权值变换法实现16进制到BCD码转换-1

加减计数法实现二进制(16进制)到BCD码(十进制)的转换,实现方法非常简单,但是其缺点也很明显,(1)计算速度慢,特别在利用软件进行计算式时速度更慢,(2)功耗大,由于计算速度慢,当数值较大时,无论硬件(FPGA或ASIC)还是软件,系统长期处在计算中,因此动态平均功耗都比较大。在数值较大要求快速计算或低功耗系统中时不能满足要求,因此提出一种快速算法–权值变换法。

%title缩略图

仿真工程中$readmemh 使用-4

使用xsim目录的缺点是每次仿真复位后(右键点击SIMULTAION,选择Reset,如图2所示),会删除led_sim.sim 文件,用户需要重新制作文件,再次放入的xsim 这个目录中,比较麻烦; 如果将led_sim.sim 放到其他的目录下,可以避免这个问题的出现。

%title缩略图

仿真工程中$readmemh 使用-3

例化一个 8-bit 宽的ram存储器,深度为128。 将文本文件test.txt 文件中每一行最后一个byte 数据,存储到ram中, 从ram[0] 开始, 直到test.txt 文件的最后一行结束,或者是读出的数据达到 ram 的最大深度。文本文件的格式需要注意只能使用0-9,a-f,每一行的末尾需要以回车换行结束。

%title缩略图

仿真工程中$readmemh 使用-2

$readmemh 系统函数就是用来帮助开发者加载仿真数据的。$readmemh系统函数本身具有文件操作功能,因此不需要$fopen等文件操作。通常来说 , $readmemh 也被归为文件操作类型的系统函数。

%title缩略图

仿真工程中$readmemh 使用-1

在verilog 仿真中,有时会使用$readmemh系统函数,帮助仿真者快速装载仿真所使用的数据。在一些简单的仿真中, 我们可以通过initial 来加载仿真的数据,但是当仿真数据比较多的情况下, 就需要使用系统函数加载数据了。

%title缩略图

什么是C语言?C语言的历史

C是一种非常流行,简单且灵活的通用编程语言,是一门面向过程的计算机编程语言,其设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

%title缩略图

为什么学习C语言 ?C语言的应用领域

C语言是许多编程语言的基础语言。“ C”作为主要语言将在学习其他编程语言时扮演重要角色。它们具有相同的概念,例如数据类型,运算符,控制语句等。 “ C”可广泛用于各种应用中。它是一种简单的语言,可以提供更快的执行速度。在当前市场上,“ C”开发人员可以很快找到很多工作。

%title缩略图

状态机分段描述方法-3

三段式状态机将二段式状态机的第二段再进行拆分,将次态的实现作为状态机的第二段,将输出逻辑作为状态机的第三段。伴随着三段状态机的可能还有其它与状态转移相关的逻辑,该部分内容不属于三段式状态机本身的内容,可以分开描述,也可以合并到对应的状态机的各个段中。

%title缩略图

状态机分段描述方法-2

经过改写之后可以看出,按键去抖程序的状态转换更加清晰。而且从上例的最后可以看出按键最后的输出不仅与状态有关(RLS_DEBOUNCING),而且与按键的输入有关,因此该状态机是梅利机。而且上面是标准的一段式状态机。

%title缩略图

状态机分段描述方法-1

上几节内容介绍了状态机建模以及摩尔机、梅利机的描述,状态机的编码格式等内容,本节内容着重介绍状态机的分段描述方法。按照状态机的分段描述方法,状态机可分为一段式状态机,二段式状态机,三段式状态机。