自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (1)
  • 收藏
  • 关注

原创 用OpenGL生成裸眼3D图片

模拟双眼的视角生成同一个场景的两个图片,用3D眼镜或者裸眼3D观察法让两个图片同时送到左右两只眼睛中,大脑(或人的视觉系统)自动脑补出3D场景,这种场景的立体效果比单一的图片效果好很多。这里采用OpenGL实现对双眼视角的模拟,使用gluPerspective生成透视模型,使用gluLookAt来实现对双眼的模拟。

2024-04-04 12:20:11 807

原创 HDL4SE:软件工程师学习Verilog语言(十七)

17 AXI总线在实际的应用项目中,Xilinx的FPGA使用量比较大,所以买了一块Xilinx的FPGA开发板来做适配。现在的FPGA开发越来越集成化了,Altera有QSys,Xilinx则以AXI总线为基础来支持系统设计,它们的Vivado设计软件有图形化设计工具,提供了很多常用的IP核,减少了很多设计工作量,并通过代码自动生成减少了不少人为的错误。应该说,设计软件是否好用,直接降低了使用的门槛,让设计人员更加关注项目相关的逻辑设计,而不是关注一些符合性的八股文。本节介绍Vivado下的RISCV核

2021-09-18 09:18:26 691

原创 HDL4SE:软件工程师学习Verilog语言(十六)

16 实用化的RISC-V CPU前面我们在FPGA开发板上实现了一个RISC-V的CPU,可以跑工具链编译出来的应用。然而感觉没有实用性,本次我们对CPU的设计做一些总结性的讨论,然后对这个RISC-V的CPU核进行改造,减少它的指令执行周期,增加一个外部设备,提供一个交互式的软件,让它可以用在一些FPGA的应用项目中。16.1 CPU设计的一些问题CPU,或者外推一下,包括DSP,GPU以及一些专用芯片中的处理器,其实称之为可编程通用状态机,可能更加贴切一些,后面还是用CPU来指称了。CPU设计其

2021-09-03 16:31:22 566

原创 HDL4SE:软件工程师学习Verilog语言(十五)

15 RISC-V CPU的FPGA实现【请参考】01.HDL4SE:软件工程师学习Verilog语言(十四)02.HDL4SE:软件工程师学习Verilog语言(十三)03.HDL4SE:软件工程师学习Verilog语言(十二)04.HDL4SE:软件工程师学习Verilog语言(十一)05.HDL4SE:软件工程师学习Verilog语言(十)06.HDL4SE:软件工程师学习Verilog语言(九)07.HDL4SE:软件工程师学习Verilog语言(八)08.HDL4SE:软件工程师

2021-08-27 19:47:34 1103

原创 HDL4SE:软件工程师学习Verilog语言(十四)

14 RISC-V CPU初探前面我们介绍了verilog语言的基本语法特征,并讨论了数字电路设计中常用的状态机和流水线结构,然后我们借鉴SystemC的做法,引入了HDL4SE建模语言,以及相应的仿真系统,当然同时提供了verilog到这种语言的编译系统(部分功能尚未完成)。这个系列的最后一个目标是实现一个RISC-V的CPU核。本节先对RISC-V CPU进行初步的讨论,后面实现了一个用HDL4SE语言写的周期级别的可以运行的模型,可以看作是一个RISC-V CPU的行为级的CModel,它虽然简单,

2021-08-22 09:56:32 1526

原创 HDL4SE:软件工程师学习Verilog语言(十三)

13 HDL4SE环境和HDL4SE子集前面我们已经介绍了verilog语言的基本概念,虽然做了剪裁,但是我们所需要的RTL描述,基本上还是完整的。然而对于软件工程师而言,前面的描述有两个问题,一个是没有明确定义一个规范,另一个是范围还是过大。没有明确一个规范,也就是没有规定一个HDL4SE的verilog子集,很多内容存在发挥空间,每个人理解可能还是不大一致,加上IEEE. 1364-2005规范本身存在一些不够明确的地方,比如基本的表达式运算优先级只在文本中规定了,但是在后面的形式语法描述中居然没有给

2021-08-15 23:03:38 353

原创 HDL4SE:软件工程师学习Verilog语言(十二)

#11 HDL4SE环境和HDL4SE子集前面我们已经介绍了verilog语言的基本概念,虽然做了剪裁,但是我们所需要的RTL描述,基本上还是完整的。然而对于软件工程师而言,前面的描述有两个问题,一个是没有明确定义一个规范,另一个是范围还是过大。没有明确一个规范,也就是没有规定一个HDL4SE的verilog子集,很多内容存在发挥空间,每个人理解可能还是不大一致,加上IEEE. 1364-2005规范本身存在一些不够明确的地方,比如基本的表达式运算优先级只在文本中规定了,但是在后面的形式语法描述中居然没有

2021-07-11 16:45:15 753

原创 HDL4SE:软件工程师学习Verilog语言(十一)

11 流水线前面一节介绍了状态机的概念。状态机用于描述事物处理的一个程序性流程,可以组成顺序,分支,循环的事物处理流程。这些概念本来在verilog中的行为级描述中是有的,但是由于不是RTL描述,因此无法直接编译到电路,状态机提供了顺序分支循环等控制结构的RTL描述。然而状态机的缺点是,整个处理流程任何时候只会在一个状态中,只处理一个事务,比如描述一个软件工程师的工作,可能是需求分析,概要设计,详细设计,调试,测试,然后在这几个状态之间来回切换,用状态机是比较恰当的。但是如果对一个分工比较明确的团队,上

2021-07-05 21:22:52 976 1

原创 HDL4SE:软件工程师学习Verilog语言(十)

10

2021-06-21 21:31:59 1143

原创 HDL4SE:软件工程师学习Verilog语言(九)

9

2021-06-18 15:34:46 648

原创 HDL4SE:软件工程师学习Verilog语言(八)

8

2021-06-12 09:22:31 809 2

原创 HDL4SE:软件工程师学习Verilog语言(七)

1 引言2 基本程序结构3 线缆和寄存器4 常数、表达式与赋值5 if语句和case语句6 always块与initial块7 task与function8 元单元9 编译指示10 模拟运行与调试

2021-06-05 17:45:25 1359 2

原创 HDL4SE:软件工程师学习Verilog语言(六)

6

2021-05-30 19:06:19 2706 1

原创 HDL4SE:软件工程师学习Verilog语言(五)

5

2021-05-25 06:42:53 601

原创 HDL4SE:软件工程师学习Verilog语言(四)

4

2021-05-23 21:20:21 1625 2

原创 HDL4SE:软件工程师学习Verilog语言(三)

1 引言2 基本程序结构3 线缆和寄存器4 常数、表达式与赋值5 if语句和case语句6 always块与initial块7 task与function8 元单元9 编译指示10 模拟运行与调试

2021-05-13 18:36:53 1274 1

原创 HDL4SE:软件工程师学习Verilog语言(二)

2 模块–程序结构

2021-05-09 13:07:17 898

原创 HDL4SE:软件工程师学习Verilog语言(一)

#1 引言

2021-05-08 22:23:39 2410 3

原创 LCOM:带数据的接口

【摘要】本文试图在LCOM编程模型中引入面向接口的变量,为程序员提供更加灵活的编程模型。1 问题来由前面的文章LCOM:轻量级组件对象模型引入了一种类似于COM的一种编程模式,可以理解为COM的简化版本。其中以接口作为编程关注的核心,所有的功能都用接口定义,一个软件模块实现一个或多个对象,每个对象实现一个或多个接口,对外提供服务。每个接口定义为一组函数的集合,在COM中,这点规定得比较死,接口中是不允许出现变量的,以致于要访问一个对象的内部变量,甚至出现了var_Get, var_Set这样的接口函数。

2021-05-03 13:21:01 646

原创 LCOM:轻量级组件对象模型

【摘要】组件对象模型(Component Object Model,COM) 是微软公司首推的变成模型。它将软件分为接口和实现两个部分,由接口定义抽象的功能,一个实现模块则可能实现多个接口,来提供实际的功能。这样在一个大型软件中,可以将模块之间的耦合大幅度降低,降低模块管理的难度。有的嵌入式操作系统中也引入了COM模型,比如vxWorks。但是,COM模型为了兼顾分布式(DCOM),实现二进制级的对象模型交换,显得比较复杂,基本代码量比较复杂,本文试图引入一种轻量级的组件对象模型,完全用c实现,核心部分非常

2021-04-24 09:05:34 1261 1

原创 OpenGL中的曲面细分和几何着色器

[摘要]本文我们先介绍OpenGL中的曲面细分的一些基本概念,然后给两个例子说明不得不用这项技术的理由。曲面细分是OpenGL 4.0之后才定义的功能,使用之前请确认你的显卡驱动支持OpenGL4.0以上。1. 曲面细分的目的OpenGL用透视变换将三维几何模型映射到二维平面上,这样随着透视参数(比如模拟相机位置,方向,角度,焦距等等)的不同,以及几何模型在场景中的位置和大小不同,几何模型在二维平面显示的大小会不同。在传统的OpenGL应用中,一个几何模型建立后,GPU是不能增减模型中的顶点的。这样一

2021-04-17 19:37:50 3405 2

原创 OpenGL4.0 Shader 绘制MandelBrot集合

切换到电脑上舒服多了手机上还是不够方便啊

2021-04-17 11:11:24 492

原创 贴段代码试试看

GS#version 400uniform double psize;uniform dvec2 pfrom;layout(lines) in;layout(points, max_vertices = 256) out;out VS_OUT { vec4 vColor;}vs_out;void main(){ float x, u; int outcount; int i, j, last, limcount; u = float(gl_in[0].gl_P

2021-04-17 07:43:58 147

原创 新手测试贴

标题2备注:标题必须从行首开始,##之后要有空格1.说好的分级标题呢链过去OpenGL绘制分形图形MandelBrot集合外部链接的格式是[显示题目](链接目标),括号必须半角才行。

2021-04-17 07:33:47 145

原创 外部连接的题目好像不对

接着测试##链过去OpenGL绘制分形图形MandelBrot集合

2021-04-17 07:20:27 109

原创 刚开通CSDN,测试一下

hello,world!测试一下能连接到微信公众号么?link

2021-04-17 06:57:33 153

在64位windows下的bison 3.7和flex 2.6.4

使用cygwin编译的能够在64位windows下的bison 3.7和flex 2.6.4,已经配置了所需要的所有文件。

2021-04-22

空空如也

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

TA关注的人

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