自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 verilog 文章总览

【代码】verilog 文章总览。

2025-04-08 11:21:26 293

原创 PCIe 文章总览

简介。

2023-05-20 16:14:47 953

原创 我的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

原创 QEMU-KVM 文章总览

流程总览QEMU 杂谈各个架构X86_64ARMv7ARMv8riscv

2021-09-23 11:41:29 631

原创 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

原创 gem5 模拟器

官网github个人靠谱介绍个人使用记录

2025-07-16 14:31:44 192

原创 浮点测试初探

库提供了纯软件实现的 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

原创 写传播和写策略

【代码】写传播和写策略。

2025-07-05 16:57:32 767

原创 HTM简介

它们共同构成了现代处理器对同步原语的支持基础。

2025-07-04 23:07:51 926

原创 原子操作指令的设计实现

通过硬件绝对保证 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

原创 libprobuf.so.7的安装

【代码】libprobuf.so.7的安装。

2025-06-26 12:51:41 188

原创 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

原创 释放一致性(Release Consistency)

【代码】释放一致性(Release Consistency)

2025-06-19 16:00:00 84

原创 WO(Weak Ordering)

【代码】WO(Weak Ordering)

2025-06-19 15:46:38 295

原创 safety net

因此,虽然没有明确给出“可用于 write atomicity 放松”的字样,但 fence 机制。“fence 指令禁止 fence 之后的内存访问在 fence 之前的内存访问完成之前执行”“store 必须访问缓存并发出总线请求”,只不过文章更关注“顺序”这一角度。

2025-06-19 14:27:14 523

原创 严格一致性模型

【代码】严格一致性模型。

2025-06-18 20:56:01 149

原创 Processor Consistency

【代码】Processor Consistency。

2025-06-18 20:38:59 232

原创 提升 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

原创 共享存储系统 文章收集

单处理器系统如何保证IO操作的缓存一致性缓存一致性 与 执行流缓存一致性的形式化定义缓存一致性性的 实现等价

2025-06-11 14:01:46 461

原创 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

原创 缓存一致性 与 执行流

区分硬件机制(缓存一致性 - 物理核心)和软件契约(内存模型 - 逻辑执行流)对于精确理解至关重要。

2025-06-07 11:46:08 496

rtc1339驱动

这是海思平台下的一个rtc驱动,编译环境请参考海思35系列开发环境

2017-04-26

freetype2+SDL+SDL_ttf源码包及字符串转bmp图片demo

1/包内有freetype2 SDL SDL_ttf的源码包 2/包内有字符串转bmp图片的demo 3/运行前需要确定已经安装好了freetype2 SDL SDL_ttf

2017-03-07

uboot make过程的log

uboot make过程的log

2017-08-01

qt 初学 demo

qt 初学 工程 https://blog.csdn.net/u011011827/article/details/74451568

2018-04-30

qt控制台工程

qt控制台工程

2017-07-04

cgic库源文件

cgic.h 与 cgic.c

2017-03-26

安卓可执行C代码

安卓可执行C代码https://blog.csdn.net/u011011827/article/details/89706337

2019-05-01

sys_value demo

参考 https://blog.csdn.net/u011011827/article/details/89431996

2019-04-21

HEX文件BIN文件互换

该工具可以将bin文件转化为hex文件,也可以将hex文件转化为bin文件

2017-03-02

快速阅读代码.rar

https://blog.csdn.net/u011011827/article/details/89765534

2019-05-09

动态库静态库链接运行测试

http://blog.csdn.net/u011011827/article/details/53966311 参考

2017-07-02

u-boot-2010.06源码make执行过程

u-boot-2010.06源码make执行过程

2017-06-01

JLINK工具套件

JLINK工具套件,和JLINK硬件配合,可以烧写程序,可以烧写bootloader

2017-03-02

sourceInsight样式文档

在软件中Load就可以了

2017-05-07

qt初学者的qt工程

涵盖 qt 信号槽 线程 进程 事件 网络

2017-07-05

getopt实验代码

getopt实验代码

2017-04-27

sourceInsight样式

在sourceInsight中Load就可以了

2017-05-07

u-boot-2010.06 Makefile

u-boot-2010.06 Makefile

2017-06-01

sqlite-autoconf-3150200.tar.gz

sqlite-autoconf-3150200.tar.gz

2016-12-30

ping 命令的ftrace文件,基于dm9000

ping 命令的ftrace文件,基于dm9000

2023-04-08

linux-5.17 arm32 arm64 rv64 arch 下的 共同函数

linux-5.17 arm32 arm64 rv64 arch 下的 共同函数 https://blog.csdn.net/u011011827/article/details/124896520

2022-06-16

2,UCOS学习资料.rar

https://blog.csdn.net/u011011827/article/details/105696630

2020-04-23

swd下载过程分析需要的数据

https://blog.csdn.net/u011011827/article/details/117964522

2021-06-16

cortex-m4 stm32f407zg-dsl.rar

https://blog.csdn.net/u011011827/article/details/121190906

2021-11-07

ok6410-4.0-build-file.tar.gz

https://blog.csdn.net/u011011827/article/details/108729908

2020-09-22

swd下载分析用到的数据

单片机下载过程解析数据

2021-06-16

sample-makefile.zip

https://blog.csdn.net/u011011827/article/details/105574118

2020-04-17

stm32f407_in_linux.tar.gz

https://blog.csdn.net/u011011827/article/details/102615655

2019-10-17

grub-build.log

https://blog.csdn.net/u011011827/article/details/109290258 基于LFS-6.3的 GRUB-0.97 实用教程

2020-11-22

ok6410_sd.tar.gz

https://blog.csdn.net/u011011827/article/details/108798044

2020-09-28

forlinx6410_defconfig

https://blog.csdn.net/u011011827/article/details/108729908

2020-09-22

sdio_data_AllInOne.rar

sdio 相关资料 , https://blog.csdn.net/u011011827/article/details/100127530

2019-09-01

free_rtos_9_0_0.tar.gz

https://blog.csdn.net/u011011827/article/details/103946772

2020-01-12

实验1 跑马灯实验.rar

https://blog.csdn.net/u011011827/article/details/105486941

2020-04-17

app_test_all.tar.gz

https://blog.csdn.net/u011011827/article/details/105767175

2020-04-26

log.openocd

log.openocd,https://blog.csdn.net/u011011827/article/details/102643360

2019-10-19

led_stm32.tar.gz

https://blog.csdn.net/u011011827/article/details/105621619

2020-04-23

hello程序的rpm包

https://blog.csdn.net/u011011827/article/details/103977458

2020-01-14

空空如也

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

TA关注的人

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