06 2023 档案

摘要:在学习SystemVerilog读取文件时,练习读取自身的代码,代码如下: 1 module Test; 2 int file; 3 4 initial 5 begin 6 string s; 7 file = $fopen("TestFile.sv", "r"); 8 while(!$feof(f 阅读全文
posted @ 2023-06-20 21:57 颜秋哥 阅读(979) 评论(0) 推荐(0)
摘要:睡前读书,《SystemVerilog验证测试平台编写指南(原书第三版)》,2023年3月第一版,第一次印刷。 [例2.60],代码中COLOR_e在c2赋值时,改成了小写。修正后,加上module声明的代码如下: 1 module Test; 2 typedef enum {RED, BLUE, 阅读全文
posted @ 2023-06-19 23:33 颜秋哥 阅读(96) 评论(0) 推荐(0)
摘要:结合《SystemVerilog验证测试平台编写指南》和《FPGA应用开发和仿真》,在gVim里敲代码,学习一下接口的用法。 1 interface membus 2 #( 3 parameter LEN = 256, DW = 8 4 ) 5 ( 6 input wire clk, 7 input 阅读全文
posted @ 2023-06-14 21:46 颜秋哥 阅读(93) 评论(0) 推荐(0)
摘要:《SystemVerilog验证测试平台编写指南》,刚刚学完队列和结构体,就想练习一下。 1 module TestStruct; 2 typedef struct packed 3 { 4 bit [7:0] addr; 5 bit [7:0] pr; 6 bit [15:0] data; 7 } 阅读全文
posted @ 2023-06-13 22:32 颜秋哥 阅读(308) 评论(0) 推荐(0)
摘要:嗯,高考结束了,那就编写一个阅卷和查成绩的多线程吧。一个线程老师阅卷,其他三个线程查成绩。代码如下: 1 #include <iostream> 2 #include <thread> 3 #include <mutex> 4 #include <condition_variable> 5 #inc 阅读全文
posted @ 2023-06-10 16:02 颜秋哥 阅读(89) 评论(0) 推荐(0)
摘要:在《边界扫描测试技术及应用》中,介绍了TAP控制器的传统方法,即: 1、对16位状态进行编码,一个触发器有两种状态,16种状态就需要4个触发器。四个触发器的输出就命名为A、B、C、D。那么DBCA的顺序取二进制数字,就可以构成0000到1111这16个状态。 2、状态编码之后,就可以画出状态转化图。 阅读全文
posted @ 2023-06-04 17:57 颜秋哥 阅读(508) 评论(0) 推荐(0)
摘要:在学习状态机的编码方式,按照我个人的理解,将电路划分为输入方程,状态方程,输出方程。时序电路的设计,大多都是遵循这三个方程来进行。 在输出方程里,有两种描述方法: // 输出方程:方案一 assign sm_out = ( current_state == state_C ); // 输出方程:方案 阅读全文
posted @ 2023-06-03 08:15 颜秋哥 阅读(188) 评论(0) 推荐(0)