- 博客(1083)
- 资源 (37)
- 收藏
- 关注

原创 我的CSDN文章
指令集架构篇ARMv7&ARMv6ARMv8RISCV32+RISCV64SOCsoc架构原理篇u-boot- 基于arm32linuxbuildrootexternal debug - 基于 jtag工程篇cortex-m单片机硬件接口及驱动linux驱动框架裸机存储管理linux内存管理 第一刷KVM篇QEMU-KVM复杂协议篇蓝牙协议以太网协议.........
2022-04-19 17:06:25
1091
1

原创 ARMv6 ARMv7 架构 整体介绍
文章目录市场应用领域市占率常见产品架构编程模型运行状态指令集寄存器非特权级别(usr模式)下不建议访问的指令与寄存器ABI异常模型特权级异常种类内存模型VMSA&MMU内存顺序模型cache默认内存一致性模型debug模型External DebugSelf-hosted DebugTraceboot模型虚拟化模型安全模型开发工具gcc toolchain & gdbqemu常见开发环境(除qemu外)软件开发裸机(baremetal)RTOSLinuxboot架构相关代码通用知识:如何新增
2022-04-16 14:36:11
4479

原创 ARMv8 ARM64 架构 整体介绍
这里整理一些 arm64(aarch64是armv8下面的一个工作状态,一般我们将其称为arm64?)
2022-02-10 10:43:29
8317
2

原创 基于JTAG的 芯片DEBUG 文章整理
基于JTAG的 芯片DEBUG 架构CROSS_GDB <-> GDB SERVER(openocd) <-> USB转JTAG小板(openjtag) <-> core(riscv&arm)jtagJTAG (一)杂谈JTAG (二) 协议JTAG (三) jtag实例 riscvJTAG(四)jtag实例arm cortex-m4&方法arm-debugriscv-debugopenjtagopenocdgdb...
2021-11-07 16:00:05
1829

原创 RISC V (RV32+RV64) 架构 整体介绍
riscv RTOS基于rv32 的 freertos基于rv64 的 rt-thread(非官方)基于rv64 的 rt-thread(官方)[基于rv32 的 rt-thead(非官方)](-TODO
2021-09-02 15:53:53
10446

原创 CORTEX-M 单片机 文章总览
一般来说 我们学习单片机 是通过学习历程(外设) 来 学习单片机在这里,换个角度从 单片机 启动角度 调试下载角度 内存角度 工程角度 来 学习单片机ARM单片机工程的编译链arm 的交叉编译链厂商单片机makefile工程makefile-linux工程单片机的bootstm32的bootgd32的boot单片机的内存stm32的内存映射调试下载框架及工具上位机软件JLink_Windows上位机软件openocd-linux上位机软件openocd-w
2021-06-17 14:14:10
665

原创 OK6410A 开发板 (九) A buildroot-2021.02 OK6410A 文章整理
硬件环境ok6410a板子的配置及资料整体boot现状最简移植ok6410a buildroot-2021.02 最简 移植busybox启动root账户密码登陆控制台为 串口0支持 reboot poweroffX11linux-5.11 ok6410a 增加lcd支持ok6410a buildroot-2021.02 x11 移植包括 ok6410a buildroot-2021.02 最简移植 的所有功能呢支持 设备管理mdev支持 xorg支持 网络工具
2021-04-15 14:43:29
499
1

原创 OK6410A 开发板 (八) A linux-5.11 OK6410A 文章整理
硬件环境ok6410a板子的配置及资料核心移植linux-4.0的移植linux-5.11的移植分析linux-5.11的配置过程分析linux-5.11的编译链接过程分析linux-5.11运行过程简略分析
2021-04-01 18:50:28
1501
4

原创 OK6410A 开发板 (三) A u-boot-2021.01 OK6410A 文章整理
硬件环境ok6410a板子的配置核心移植移植u-boot,使其能够跑起来并加载内核外围移植lcd 裸机lcd u-bootethernet 裸机ethernet u-boot其他外围驱动的TODO list分析整体boot现状需要分析的listu-boot与spl 配置过程Makefile解析spl 编译链接过程u-boot 编译链接过程spl与u-boot 编译链接过程的区别spl 运行分析简版spl 运行分析详细版u-boot运行
2021-03-30 16:45:22
365
1
原创 浮点测试初探
库提供了纯软件实现的 IEEE-754 浮点运算,精度准确,覆盖了单精度(float)、双精度、扩展精度。适合用于验证单精度浮点数运算的正确性,尽管它本身是高精度的(任意精度)。你可以用它生成参考值,再与单精度 float 运算结果做对比。支持多种 rounding modes、NaN、异常等测试。是它的测试模块,可以对比硬件浮点结果与软件参考实现。Berkeley 的。
2025-07-11 16:25:57
315
原创 multicore和multithreading
✔️Interleaved MT 是一个上层分类,Fine-Grained MT 和 Coarse-Grained MT 是其两种具体策略,区别在于线程切换的时机和目标。
2025-07-08 16:38:30
750
原创 事务的原子性
读事务和写事务在物理上是可以被穿插的,因为它们通常不要求物理原子性,只要求逻辑一致性(即最终行为符合一致性模型)。这些操作看起来像一个复合指令:它从内存中读取数据,修改它,然后再写回去。读事务和写事务的执行在物理上(时刻上)可以交错穿插 ,在逻辑上是原子的.RMW事务的执行在物理上必须是不可穿插的,在逻辑上是原子的.一致性模型实现中的核心细节:逻辑原子性 vs 物理原子性。只要是事务,在逻辑上一定是原子性的。在物理上是否可以交错穿插要看情况.可以称为 RMW事务。
2025-07-05 17:54:18
615
原创 原子操作指令的设计实现
通过硬件绝对保证 RMW 原子性,同时通过 ISA 参数灵活适配不同内存模型需求。原子操作指令是独立于 Coherence 和 Consistency 的。,其设计目标是为程序员提供。
2025-07-03 15:52:07
1108
原创 缓存一致性和内存一致性的设计实现
coherence协议 只要正确实现(如MESI),coherence(cache coherence)一定满足,不存在“部分一致”或“放松一致”。若协议未正确实现(如忽略失效请求),则系统直接违反一致性,无中间状态。基本上所有的CPU设计不要保证coherence.硬件按照类别 分为 缓存结构相关 coherence协议相关 ISA实现相关consistency(memory consistency)存在从强到弱的一致性频谱,放松程度可量化(如TSO放松乱序,RC放松更多)。弱模型需开发者显式使用屏障或
2025-07-03 15:18:44
559
原创 缓存一致性协议前言
当然可以!下面给你按照 不同维度 来对事务进行常见的分类方法:✅ 事务过程读事务:写事务:⚠️ 关于事务是否会被其他读/写事务穿插总线事务层面:在经典单总线广播架构里,总线是互斥的 —— 一次仲裁中只允许一个事务占用总线。因此 不会被其他事务穿插(串行)。CPU 层面 / 缓存层面:CPU 发出的事务会排队等待总线仲裁,其他处理器也可能发起事务。因此 不同 CPU 的事务在宏观上是交错的,只是 单个总线事务在总线上不可打断。在缓存一致性协议上下文中,事务一般分为 CPU 事务 和 Bus 事务指 处理器
2025-06-29 14:01:38
1032
原创 Fundamentals of parallel multicore architecture 第7章
【代码】Fundamentals of parallel multicore architecture 第7章。
2025-06-22 16:42:45
130
原创 Fundamentals of parallel multicore architecture 第五章
【代码】Fundamentals of parallel multicore architecture 第五章。
2025-06-21 16:29:27
184
2
原创 safety net
因此,虽然没有明确给出“可用于 write atomicity 放松”的字样,但 fence 机制。“fence 指令禁止 fence 之后的内存访问在 fence 之前的内存访问完成之前执行”“store 必须访问缓存并发出总线请求”,只不过文章更关注“顺序”这一角度。
2025-06-19 14:27:14
523
原创 提升 SC性能的技术
条件说明正确执行顺序P1 的load1和load2必须按写的顺序执行提前执行风险如果load2提前执行,可能看到某个 store 的新值问题来源store1还没传播,但store2的效果被提前看到结果程序看到一个不可能的状态组合,违反 SC解决方案禁止提前执行或用投机 + 验证机制如果你愿意,我们还可以列出这种乱序读取的可观察行为矩阵,帮助你在各种情况下推演哪种顺序合法。需要吗?
2025-06-16 15:19:48
690
原创 SC Semantic-level 定义 对应的 implementation-level 定义
由于 SC 本身是一个语义模型,不直接指定实现细节,但其严格的语义要求对硬件实现施加了隐式的约束。为了满足 SC 的语义,硬件在实现层面必须做到以下几点(这是 SC 的implementation-level 定义严格的程序顺序执行硬件必须确保每个处理器的内存操作(读/写)按照程序顺序发出和完成。禁止指令重排序,包括:read-read 重排序read-write 重排序write-read 重排序write-write 重排序立即的写操作可见性。
2025-06-13 11:18:58
308
原创 基于SC内存一致性模型两个核心约束的放松维度
针对SC核心约束1的relax每种顺序还细分为:├── 相同地址(通常不允许放松)└── 不同地址(放松的主要目标)针对SC核心约束2的relax。
2025-06-12 10:20:16
778
原创 atomicity of memory accesses
操作类型开始点结束点Load发起 cache read数据拿到为止Store发起 cache write数据在所有核心可见为止。
2025-06-11 15:51:10
554
原创 simple write-through invalidation protocol 如何满足缓存一致性的形式化定义
凭借 B1 和 B3 可以 构造出一个假想全局序列, 且能 满足 A1。B3. 读写之间定义 partial order。B2. 读能读到最新写入的值。B1. 写-写顺序一致。
2025-06-10 10:26:12
195
原创 多核处理器系统中内存一致性问题举例
问题是否成立说明多核系统会 stall 直到看到一致的数据❌不会,读取会看到“当前可见的值”,不等于等待一致store buffer 是 FIFO,所以写顺序一致✅/❌顺序进入 store buffer,但何时对其他核心可见不一定顺序传播快慢是否只是影响延迟❌在弱一致模型下,传播差异导致可见顺序乱序,进而出现 assert 失败assert(data == 123) 会失败吗✅ 可能在 ARM/RISCV 等架构上,确实可能,如果没有内存屏障。
2025-06-09 23:16:51
776
原创 缓存一致性性的 实现等价
讲述了 缓存一致性的 形式化定义 . 是从 高层次 形式化定义了 缓存一致性 , 但是没提 如何实现 怎么实现.那么从实现角度 呢?
2025-06-09 21:57:49
309
原创 共享存储系统
共享存储系统”这个术语的本质含义所有执行流可以访问统一的地址空间不同执行流对同一地址的访问是有语义意义的,即存在一致性保证;并行程序中,多个执行流通过读写共享变量通信与协作;这不仅是物理上的共享(即某个地址从所有执行流都可访问),还要是语义上的共享(不同执行流看到的值具有一致性逻辑)。1型: 小规模系统如多核系统(芯片内 SMP)或者通过总线互联的少量多核芯片(主板内 SMP),硬件的复杂度相对较低.提供共享存储的代价随着处理器数量的增加而超线性地增加。
2025-06-09 15:56:46
832
原创 并行硬件环境及并行编程
第 5.7 节将从更广义的角度探讨这些架构对并行编程的影响,并综合第 2 章和第 3 章关于并行程序的知识,以及本章关于。是共享内存并行编程中性能优化的关键目标,尤其是在基于总线的系统中,总线是瓶颈资源。来减少缓存未命中率(cache miss)和共享总线上的数据通信(流量)。:访问一个地址后,很可能会访问邻近地址(→ 利用块式缓存可提高效率);:近期访问的数据未来可能还会被访问(→ 使用缓存可以提高命中率);结合,进一步分析编程层面会遇到什么样的约束与优化方向。这里将回顾前面章节介绍的。
2025-06-07 21:14:23
222
freetype2+SDL+SDL_ttf源码包及字符串转bmp图片demo
2017-03-07
qt 初学 demo
2018-04-30
安卓可执行C代码
2019-05-01
sys_value demo
2019-04-21
快速阅读代码.rar
2019-05-09
动态库静态库链接运行测试
2017-07-02
linux-5.17 arm32 arm64 rv64 arch 下的 共同函数
2022-06-16
2,UCOS学习资料.rar
2020-04-23
swd下载过程分析需要的数据
2021-06-16
cortex-m4 stm32f407zg-dsl.rar
2021-11-07
ok6410-4.0-build-file.tar.gz
2020-09-22
sample-makefile.zip
2020-04-17
stm32f407_in_linux.tar.gz
2019-10-17
grub-build.log
2020-11-22
ok6410_sd.tar.gz
2020-09-28
forlinx6410_defconfig
2020-09-22
sdio_data_AllInOne.rar
2019-09-01
free_rtos_9_0_0.tar.gz
2020-01-12
实验1 跑马灯实验.rar
2020-04-17
app_test_all.tar.gz
2020-04-26
log.openocd
2019-10-19
led_stm32.tar.gz
2020-04-23
hello程序的rpm包
2020-01-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人