- 博客(22)
- 收藏
- 关注
原创 Verilog 4:数组
网线或变量的数组声明可以是标量的,也可以是向量的。通过在标识符名称后面指定地址范围,可以创建任意数量的维度,这样的数组被称为多维数组。在Verilog语言中,寄存器(reg)、线网(wire)、整型(integer)和实型(real)这些数据类型都允许使用数组。为了访问数组的某个特定元素,必须为每个维度指定一个索引,该索引可以是其他变量的表达式。可以为Verilog中支持的任何不同数据类型创建数组。请注意,由n个1位寄存器组成的存储器与一个n位向量寄存器是不一样的。
2025-04-22 16:44:23
959
原创 Verilog 3:标量和向量
Verilog 需要表示单个比特位以及比特位组。例如,单个比特位的时序元件是一个触发器。然而,一个 16 比特位的时序元件是一个可以存储 16 比特位的寄存器。为此,Verilog 中有标量和向量类型的线网和变量。
2025-04-22 16:00:20
256
原创 Verilog 2:数据类型
在 Verilog 语言中,数据类型的主要用途是表示像触发器中的比特这样的数据存储元素,以及像连接逻辑门和时序结构之间的导线这样的传输元素。
2025-04-21 23:45:44
995
原创 Verilog 1:语法
Verilog 的词法约定类似于 C 语言,它由一系列的标记(token)组成。一个词法标记可以由一个或多个字符组成,标记可以是注释、关键字、数字、字符串或空白符。所有语句行都应以分号;结尾。var_avar_A。
2025-04-19 14:11:40
735
翻译 Zama文章 之 TFHE深度解析-第一部分-密文形式
一些数学术语需要明确:是模分圆多项式的整数多项式环,是的幂。实际上,其包含次数直到的整数多项式。,此时系数是模的,我们一般用来表示。我们的模约简是以0为中心的,比如模就是用同余类是高斯概率分布,其均值为,标准差为,如果,则我们简记为。我们使用小写字母来表示(取模)整数,用大写字母来表示多项式。我们标记从到包含的整数元素为。我们分别使用MSB和LSB来表示最高有效位和最低有效位。我们定义操作为取最近整数值。
2024-01-02 11:08:21
770
1
翻译 Zama文章 之 同态加密概论
加密让敏感信息在存储或传输时受到保护。但是标准加密技术要求数据解密才能操作。同态加密背后的想法是不解密并直接计算加密数据。这一名字来自于数学概念同态性(homomorphism):一个集合的元素在保持原有元素间关系的情况下转换为另一集合的元素。应用到加密中,这就意味着操作一个明文或一个密文会产生等价的结果。就是当操作密文时在加密形式下操作明文。例如,给出两个密文和分别由明文和加密得到,那么存在公开操作,使得密文是明文的加密。允许加密文或乘密文的密码系统(不能都可以操作)称之为半同态加密。
2023-12-30 16:12:37
360
1
原创 CUDA学习之第五章 共享内存和常量内存(二)
由于第一种访问方式邻近的线程会访问连续的地址,所以一个线程束内不会冲突存储体,所以他是比较好的方式。
2023-08-10 18:42:29
186
1
原创 CUDA学习之第四章:全局内存(四)
理论带宽是指能达到的绝对最大带宽,有效带宽是核函数实际达到的带宽,计算方法是:有效带宽(GB/s) = (读字节数+写字节数)× 10^-9 / 执行时间。
2023-07-29 15:06:12
176
原创 CUDA学习之第四章:全局内存(三)
全局内存通过缓存来实现加载和存储(二级缓存),核函数的内存请求通常是在DRAM设备和片上内存间以128字节或32字节内存事务来实现。所有对全局内存的访问都会通过二级缓存,也有许多会通过一级缓存,。可以在编译时选择禁用或启用一级缓存。一行一级缓存是128字节,它映射到设备内存中一个128字节的对齐段,如果线程束的每个线程请求4个字节,那么每次就会请求128字节,正好与缓存行和设备内存段的大小相契合。和。当设备内存事务的时,会出现对齐内存访问,运行非对齐的加载会浪费带宽。
2023-07-28 16:03:32
383
1
原创 CUDA学习之第四章:全局内存(二)
分配了count字节的全局内存给devPtr指向的地址。分配和释放的成本很高,应该多次利用内存少开新的。
2023-07-28 10:40:07
205
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人