- 博客(36)
- 收藏
- 关注
原创 C++学习:C++是如何运行的
C++ 是一种强类型的编程语言,支持面向对象、泛型和低级内存操作。它的工作机制包括从编写源代码到生成可执行文件的一系列步骤。C++与文件无关,文件只是容纳运行内容的载体,需要对文件以目标系统的规则编译后,才能在目标系统中运行。
2024-07-26 18:51:51 1180
原创 根据非满秩校验矩阵H在GF(2^m)上求解生成矩阵G
如果校验矩阵H不满秩,即存在冗余行。在这种情况下,编码时可以采用H的零空间上的一组基来编码,在译码时可以使用所有行做校验。冗余行直观上构造了高列重的LDPC码,它们和编码时用到的一组基底是线性相关的,因此这些冗余行可作为校验节点参与译码。在保证校验位数不增加的前提下,给出更多零和约束来抵抗噪声干扰,从而获得译码增益。除此之外,冗余行会增大译码时延。这是因为在译码时,复杂度高的是校验节点的计算,因此冗余行的数量是影响译码时延的重要因素。
2024-07-18 22:10:21 425
原创 低密度奇偶校验码LDPC(十)——LDPC码的密度进化
1] 白宝明 孙韶辉 王加庆. 5G 移动通信中的信道编码[M]. 北京: 电子工业出版社, 2018.
2024-03-09 14:16:50 565
原创 低密度奇偶校验码LDPC(九)——QC-LDPC译码器FPGA全并行设计
本文介绍和分析了基于FPGA实现的全并行最小和译码器算法和架构,实际中由于LDPC校验矩阵一般很大且稀疏,一般不使用全并行架构。此博文用于清晰译码算法内部原理,便于大家学习理解行并行和块并行架构。参考文献方面,[1]&[2]介绍了最小和算法等典型译码算法,[3]&[4]介绍了FPGA实现架构和方法。
2024-03-05 16:31:39 660
原创 低密度奇偶校验码LDPC(七)——SPA和积译码算法的简化
写者学习QC-LDPC硬件实现的总结笔记。主要参考了白老师的书籍,自己在其中做了一些理解和总结,如有错误,请多指教。如果有相关问题,欢迎与我交流。
2024-03-02 00:07:33 943
原创 低密度奇偶校验码LDPC(六)——SPA和积译码算法
SPA 的核心是,在因子图中,一个因子节点在边 𝑥上的输出消息是和沿着除 𝑥之外的所有其他边输入到该节点的消息的乘积,并在除 𝑥之外的所有变量上求和。
2024-02-04 13:19:24 1403
原创 低密度奇偶校验码LDPC(五)——译码算法概述
在 LDPC 码的译码算法方面,Gallager 的论文给出了软判决与硬判决两类迭代译码算法(现在称之为和积算法和比特翻转算法),LDPC 码的“再发现”之后,人们对高性能的简化译码算法也进行了深入研究,提出了各种在性能与复杂度之间可以很好折中的译码算法
2024-01-31 16:11:40 655
原创 基于QC-LDPC编码的循环移位网络的FPGA实现
循环移位器的功能为对一组有序的数据进行循环移位排列。由于准循环低密度奇偶校验(quasi-cyclic low-density parity-check,QC-LDPC)码的准循环特性,循环移位器在QC-LDPC 码译码器的设计与硬件实现中扮演着重要角色。
2024-01-25 17:50:57 1197
原创 低密度奇偶校验码LDPC(四)——双对角线结构的QC-LDPC编码
双对角(dual-diagonal)结构在构造兼容或多速率 LDPC 码的时候常作为最高码率矩阵(母码),此结构也可实现线性复杂度的编码。在实际应用中,常常将单、双对角结构与准循环结构相结合来构造校验矩阵。
2024-01-24 17:16:38 1053 2
原创 低密度奇偶校验码LDPC(三)——QC-LDPC码概述
原始 LDPC 码是随机的,其编译码器实现比较复杂。在工程实践中,人们更喜欢结构化 LDPC 码,特别是 具有(准)循环结构特性的 LDPC 码,它能够极大地简化编译码器的硬件实现。
2024-01-23 21:06:13 1490
原创 低密度奇偶校验码LDPC(二)——LDPC编码方法
LDPC 编码算法给定奇偶校验矩阵H,LDPC 编码的目标是求解方程中的生成矩阵G。LDPC 编码器实现的两种通用编码方法是高斯消除方法和 RU 方法。
2023-12-14 15:30:35 2489
原创 低密度奇偶校验码LDPC(一)——概述
LDPC 码是一种可以逼近信道容量的线性分组码。在码长较长、采用置信传播(belief propagation)迭代译码的条件下,LDPC 码已经被证明具有逼近香农限的译码性能。
2023-12-14 10:48:24 1048
原创 pi/4-DQPSK(pi/4-四相相对相移键控调制)
pi/4-DQPSK指差分正交移相键控调制,是一种正交移相键控调制方式,它综合了正交相移键控 QPSK 和偏置正交相移键控(OQPSK)两种调制方式的优点。
2023-12-11 19:23:17 1792
原创 加扰与解扰
所谓加扰,又称扰码,是在不增加符号冗余度而扰乱原始信号,改变数字信号的统计特性,使其接近白噪声统计特性的技术。解扰是加扰的逆过程,把被扰乱的信号还原为原始信号。
2023-12-11 17:05:39 1008
原创 直接数字式频率合成法原理(DDS)
DDS 模块生成载波的原理是在 ROM 中存入正弦波的 N 个均匀样值,然后以均匀的速度把这些样值输出,根据频率控制字的不同即可实现不同频率的载波生成。
2023-12-09 15:11:56 267
原创 伪随机编码理论(一)
伪随机码(Pseudo random code)又称伪噪声码(Pseudo noise code),简称为 PN 码。简单来说,伪随机码是一种具有类似白噪声性质的码。白噪声是一种瞬时值服从高斯正态分布,功率谱在很宽的频带内服从均匀分布的随机过程,它具有很强的自相关特性。
2023-11-02 20:49:01 557 1
原创 扩频通信系统的理论基础
扩频通信系统是指待传输信号的的频谱按照某个扩频函数扩展为宽频带信号,然后送入信道传输。在接收端再利用相应的技术将宽频谱压缩,恢复为原来的带宽,从而达到传输信息的目的。
2023-11-02 14:35:35 323 1
原创 按键防抖动电路编码器的VHDL实现(有限状态机设计方法总结)
键盘编码和防抖动控制电路,一般采用扫描和轮询的方法来检测对键盘的敲击,这样可以减少键盘与主电路之间的连线数量。该电路每次将outp0、outp1、outp2中的一个置‘0’,然后读入inp1、inp2、inp3、inp4,而其他行输入仍保持为1。
2023-10-19 20:26:37 900
原创 使用握手信号实现跨时钟域数据传输(牛客题霸_VL60)
分别编写一个数据发送模块和一个数据接收模块,模块的时钟信号分别为clk_a,clk_b。两个时钟的频率不相同。数据发送模块循环发送0-7,在每个数据传输完成之后,间隔5个时钟,发送下一个数据。请在两个模块之间添加必要的握手信号,保证数据传输不丢失。
2023-08-28 13:56:54 184 1
原创 信号的采样
现实生活中,我们得到的信号往往是模拟信号,是连续的时间信号,储存它们需要占用很多的空间,处理它们也不灵活,方便。相比于连续时间信号,离散的时间信号(或数字信号)的处理更加灵活,方便。因此,我们可以在该信号中等间隔的取样瞬时值(样本值),这些样本值能够包含该连续时间信号的全部信息,利用这些样本值就可以恢复原信号。
2023-08-27 18:30:50 1932 1
原创 串行接收的Verilog实现思路(HDLbits_Fsm serial)
使用有限状态机实现串行接收,分为等待开始(idle)、接收(byte_receive)、停止(stop)、错误(error)四个过程。
2023-08-27 16:09:30 249 1
原创 有限状态机的序列检测的Verilog实现思路(HDLbits_Exams/2014 q3fsm)
使用有限状态机完成序列检测,到达B状态后,检测接下来的三个时钟内的输入w的值,如果三个w中有且仅有两个为1,则输出z为1,否则为0。
2023-08-24 15:02:43 154 1
原创 康威生命游戏的Verilog实现思路(HDLbits_Conwaylife)
完成一个描述康威生命游戏的电路。选择在1616的网络内进行,每个网格都有一个状态(0或1)代表死亡或存活。每当时钟上升沿到来时,所有网格的状态需要更新。如果load信号为高则将所有网格的下一状态更新为data。
2023-08-22 16:28:17 323 1
原创 时钟的Verilog实现思路(HDLbits_Count clock)
与0~9999计数器的Verilog实现思路相似,我们依然使用casex完成行为级建模。输入时钟clk和复位信号reset,输出8位宽时钟计数结果信号hh、mm、ss分别代表时、分、秒,以及上下午标识信号pm。
2023-08-21 21:26:05 233 1
原创 256-1多路选择器的Verilog实现思路(HDLbits_Mux256to1v)
实现一个256选1的多路选择器,选择的数据是四位宽的,要求输入1024位宽变量in,8位宽变量sel来进行选择,输出4位宽变量out。
2023-08-20 14:17:27 1470 5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人