自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 芯片验证 后仿 时序检查 specify

在这个例子中,$recrem 用于同时设置联合恢复时间和去除时间约束,确保在控制信号 clr 上升沿发生之后,时钟信号 clk 的上升沿至少在 2 个时间单位内发生,并且在 clr 上升沿之前,clk 上升沿至少在 3 个时间单位内发生。当设计进行时序分析时,如果发现保持时间约束违规(data_event 发生在 reference_event time + limit 之后),工具会报告相应的错误或警告,以提示设计人员需要调整时序约束或电路设计。

2023-11-15 16:20:03 557 1

原创 多态和动态类型转换

bd.display()执行的结果一样,bd.vdisplay()执行的结果不一样,这就是因为vdisplay加了virtual声明,结果是成功通过父类方法调用执。首先,声明父类bird(鸟类),然后父类里面有两个方法,一个是display,一个是vdisplay(vdisplay有个virtual声明,这是重点);(2) 子类中重写的方法对父类是不可见的,所以要想子类重写父类的方法能被父类看到,那就需要虚方法。然后看到一开始 bd.display()、bd.vdisplay()打印的都是父类中的结果。

2023-10-16 11:57:41 54 1

原创 关于单片机为啥要把结构体用typedef重定义

关于单片机为啥要把结构体用typedef重定义--为已经存在的变量类型重新命一个别名struct student{int score;char *name;};因为在C语言中结构体在函数中定义变量的时候需要这样写: struct student stu1;定义变量需要每次吧struct加上,这样比较麻烦。c++里边的话可以不加struct直接用student来定义变量。所以用typedef可以解决这个麻烦,如下。typedef struct...

2021-05-25 21:46:20 1048

原创 结构体大小计算

结构体大小的计算(学习笔记)计算需要遵循两条规则(1)结构体成员的偏移量必须是成员大小的整数倍。(0被认为是任何数的整数倍)(2)结构体大小必须是所有成员(数组,结构体除外)大小的整数倍。注:偏移量指的是每个成员相对结构体首地址的位移。ex:1.struct s1{char ch1; //偏移量为0 char ch2; //偏移量为1int i; //偏移量为2,不是自身大小的整数倍。所以前边需要补2个字节空位。};...

2021-05-25 20:54:04 908

原创 C语言的API函数

C语言的API函数字符指针的初始化--memset函数char *strDest; //字符指针无法存放字符串,只能指向一个字符串的起始地址。strDest =(*char)malloc(128); //开辟128个字节空间 分配的空间要及时释放,否则会造成内存泄漏问题。if(strDest==NULL) //malloc申请空间可能会失败{...

2021-05-25 17:21:59 584

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除