EDA期末考试重点解析:信号赋值、进程敏感表与子程序调用

版权申诉
0 下载量 82 浏览量 更新于2024-07-06 收藏 1.21MB PDF 举报
"EDA期末考试题收集.pdf包含了关于电子设计自动化(EDA)的期末考试题目,主要涉及Verilog或VHDL等硬件描述语言的基本概念和语法。" 在这份资料中,提到了几个关键的EDA知识点: 1. **信号赋值与变量赋值**: - **信号赋值**在进程外部是并行语句,同时执行,与位置无关,使用符号“<=”。 - **变量赋值**在进程中或子程序中是顺序语句,立即生效,使用符号“:=”。 - 信号赋值不会立即改变信号的值,而变量赋值则会。 2. **进程的敏感信号表**: - 敏感信号表列出进程对哪些信号变化敏感,即当这些信号发生变化时,进程会被激活执行。 - 当敏感表中的任何信号有事件发生,进程执行后会进入等待挂起状态,直到下次信号变化再次激活。 3. **EDA中的基本结构**: - **库**和**程序包**存储元件定义、类型说明和子程序,方便其他设计引用。 - **子程序**包括**过程**和**函数**,过程可以返回多个变量,函数仅返回一个变量。 - **过程调用**和**函数调用**是子程序调用的不同形式,根据目标是过程还是函数来区分。 4. **CASE语句**: - CASE语句用于条件分支,需要包含`WHEN OTHERS`语句以处理未匹配的所有情况。 - 示例中CASE语句缺失了`WHEN OTHERS`,这会导致无法处理sel信号取值未明确的情况。 5. **数据类型和端口声明**: - 示例代码中使用了`STD_LOGIC_VECTOR`类型来表示信号,如`sel`、`data_in1`、`data_in2`和`data_out`。 - `add_sub`是`STD_LOGIC`类型的输入端口,可能用于决定是进行加法还是减法操作。 这些知识点反映了EDA设计的基础,涵盖了硬件描述语言的基本语法和设计原则,对于理解和编写数字逻辑系统的设计至关重要。学生需要熟悉这些概念才能在考试中正确解答问题。