
处理器ISA
文章平均质量分 76
papaofdoudou
我的藏经阁,用数学解释问题,用编程解决问题
展开
-
Linux内核关于休眠唤醒部分的主体流程逻辑分析
修改任务状态task_struct->state和入队操作,以及__schedule操作之间,通过就绪队列大自旋锁保证互斥。原创 2020-12-03 17:15:44 · 410 阅读 · 0 评论 -
华为、飞腾、海光、兆芯、龙芯、申威这六大国产CPU发展得怎么样?
国产 CPU 厂商主要有华为、飞腾、海光、兆芯、龙芯、申威这六家,它们拥有一个共同点,就是都采用了技术引进吸收再消化的模式,没有谁是完全平地起高楼的。CPU工作模型:指令集架构指令集架构(Instruction Set Architecture),又称指令集或指令集体系,是 计算机体系结构中与程序设计有关的部分,包含了基本数据类型,指令集, 寄存器,寻址模式,存储体系,中断,异常处理以及外部 I/O。指令集架构包含一系列的 opcode 即操作码(机器语言),以及由特定处理器执行的基 本命令。原创 2023-05-24 22:33:31 · 12954 阅读 · 1 评论 -
Linux监测进程打开文件
分析问题过程中,追踪进程打开的文件可以在许多不同情况下有用,体现在以下几个方面:故障排除和调试: 当程序出现问题、崩溃或异常行为时,追踪进程打开的文件可以帮助找出问题的根本原因。这有助于快速定位错误,尤其是在访问文件时发生的错误。性能分析和优化: 了解进程打开了哪些文件可以帮助分析程序的性能问题。如果程序频繁打开和关闭文件,可能会导致性能下降。通过追踪文件操作,可以识别性能瓶颈,从而采取相应的优化措施。权限和安全审计: 在安全方面,追踪进程打开的文件可以帮助监控和审计系统上的文件访问。原创 2023-08-31 22:55:27 · 704 阅读 · 0 评论 -
Synopsys EDA数字设计与仿真
参考如下文章安装Synopsys EDA开发工具Synopsys EDA工具的结构。原创 2023-08-14 22:44:07 · 779 阅读 · 0 评论 -
Verilator仿真环境搭建
Verilator是一种开源的Verilog/SystemVerilog仿真器,可用于编译代码以及代码在线检查,Verilator能够读取Verilog或者SystemVerilog文件,并进行lint checks(基于lint工具的语法检测),并最终将其转换成C++的源文件.cpp和.h。原创 2023-08-06 23:18:58 · 1020 阅读 · 0 评论 -
关于处理器静态&动态内存屏障的原理和应用
barrier();r1 = y;barrier();r2 = x;编译为汇编指令.textrun1:.LFB0:ret.LFE0:run2:.LFB1:ret.LFE1:同样是movl指令,却代表这读和写两个意思,这一点和RISC处理器定义不太一样,无论是ARM,MIPS还是RISCV,读和写分别是两条不同的指令,ARM是ldr/str,MIPS是ld/sw,RISCV则和MIPS是同样的定义。原创 2022-11-01 23:18:10 · 544 阅读 · 2 评论 -
PC性能分析工具(top/strace/sysstat/fuser/free/stress)命令实现与原理解析
Chrome浏览器是一个多进程多线程程序,随即选择一个进程,查看其各线程发生的PAGE FAULT的情况,可以看到,主线程发生了最多的PAGE FAULT,其它线程则根据业务情况,发生了数目不等的PAGE FAULT,有个别线程没有发生PAGE FAULT,和每个线程具体的业务有关。pidstat有一个很实用的功能,就是查看进程PAGE FAULT的发生频率,minflt/s表示普通的page fault,majflt/s表示要swap-in的page fault。以上命令杀掉使用指定文件的所有进程。原创 2023-03-05 18:10:24 · 559 阅读 · 0 评论 -
arm64架构分析
arm64架构分析此文分析基于arm官方文档ARM Architecture Reference Manual ARMv8, for ARMv8-A architecture profileARM Architecture Reference Manual Supplement ARMv8.1, for ARMv8-A architecture profile Errata marku...原创 2020-04-24 19:31:14 · 5133 阅读 · 1 评论 -
SIMD < SIMT < SMT: parallelism in NVIDIA GPUs
【代码】SIMD < SIMT < SMT: parallelism in NVIDIA GPUs。转载 2022-12-11 18:31:38 · 637 阅读 · 0 评论 -
并行计算范式-SIMD vs SIMT vs SMT: What’s the Difference Between Parallel Processing Models?
PS:下图展示的是一个计算片段分别在标量计算单元和向量计算单元上不同的编程方法:转载 2022-12-10 18:03:18 · 748 阅读 · 0 评论 -
一个小型RISCV CPU Emulator设计与实现
直接执行make即可编译。原创 2022-11-04 22:52:33 · 321 阅读 · 0 评论 -
ToDesk使用
现在的终端产品种类非常的多,常见的包括tablet, 手机,笔记本 ,ipod...等等,这些终端带屏产品连同台式机,智能电视等固定设备占据了我们的工作和生活中的大部分时间,不知道你发现没有,使这些不同种类的产品之间互操作是比较麻烦的事情,这里分享一款非常好用的远程控制工具,支持跨设备,跨平台互操作,是你居家旅行,远程控制,维修电脑,泡M装X的利器,更难能可贵的是,作出这款利器竟然是国内一家普普通通的网络软公司,他就是海南有趣科技有限公司,公司网址是。原创 2022-10-21 23:47:50 · 5142 阅读 · 0 评论 -
linux系统几种固定的睡眠(休眠,调度,同步)模式
既然有休眠流程有固定的模式,就可以通过宏定义将这些模式定义出来,通过一个宏接口调用去实现,内和中已经将这些固定的休眠模式定义为wait_event_xxx宏家族,调用这些宏,可以一步到位,实现上述的宏逻辑:注意到condition条件检查被放在了设置任务state状态和进行实际休眠CMD中间,这是一种通用模式,和BARRIER的使用有关,在自己书写休眠过程时必须遵守。原创 2022-10-08 22:38:47 · 722 阅读 · 0 评论 -
利用roofline模型分析异构系统算力VS带宽
roofline模型用于描述在计算平台的算力和带宽的限制下,程序所能达到的理论性能上界。可以看到,roofline模型的纵轴为可达算力:其中A I AIAI为访存比,B W BWBW为带宽。如果把带宽比作水管,把算例比作流过水管的水流,可以形象展示如下:针对这种划分,我们大概可以将模型分为两类:1.算力未发挥型的,对应爬坡图.2.带宽未发挥型的,对应roof图.3.在转折点处,既不浪费带宽,也不浪费算力,算是一个平衡,是不是纳什均衡?...原创 2022-08-23 10:27:30 · 733 阅读 · 0 评论 -
一道概率论趣题-直觉与数学原理是否吻合呢?
一根木棒随即折成三段,中间一段最长的概率是多少?原创 2022-08-21 12:56:27 · 687 阅读 · 1 评论 -
汽车换挡是怎么回事
有人说自动挡停车熄火需要先换挡到N档,打开手刹,在继续换到P档,也就是必须要经过N档停顿一下,这样才不伤车,并且说明了原因,因为从D到P要经过R档。从下面这篇文章分析来看,这种说法纯属无稽之谈。...原创 2022-07-13 07:54:17 · 290 阅读 · 0 评论 -
CPU,GPU,NPU的架构差异对比
有价值的脑力劳动永远比单调枯燥乏味的体力劳动更能产生价值,所以,或许有一天,算力的最终形态的载体可能不是NPU,GPU甚至是CPU,但是,那个烙印在算力载体上的最深刻的基因,一定是来自于CPU的。从设计角度,传统处理器为减少每个核心上顺序代码的执行时间而优化,从而增加每个内核的复杂性是以提供功更少的核心为代价的,传统的处理器通常使用复杂的控制逻辑和大的缓存处理器,目的为了有效的处理条件分支,流水线STALL,数据局部性差的问题。支持顺序,循环,分支选择三种执行流,所以图灵完备,NPU显然不是。原创 2022-07-11 13:07:21 · 12527 阅读 · 0 评论 -
qemu运行谷歌fuchsia内核littlekernel
关于谷歌fuchsia和littlekernel的关系可以参考下面的博客Google系统fuchsia技术总结_papaofdoudou的博客-优快云博客_fuchsia 架构下面将介绍如何搭建littlekernel的运行环境。获取代码GITHUB被强了,无法从源头下载代码,可以从GITEE镜像下载代码,下载命令:git clone https://gitee.com/mirrors_littlekernel/lk.git编译并运行执行如下命令进行编译:./scr原创 2022-05-24 23:01:39 · 467 阅读 · 0 评论 -
美乐图科技IPC摄像头试玩儿
IPC详细参数如下:闪烁控制:50HZ,60HZ 拍照格式:Bmp,jpg. 传感器格式:CMOS 支持Netmeeting等各种视频会议软件 180M/bmp告诉处理器 接口类型:USB2.0 内置:吸音降噪麦克风 分辨率:1920x1080/1280x720USB描述符信息:Descriptor:caozilong@caozilong-Vostro-3268:~$ lsusb -d 0c45:64ab -vBus 001 Device 011: ID 0c45:64原创 2021-07-13 22:08:57 · 1088 阅读 · 0 评论 -
线性变换的思想
二维空间中,旋转算子对应的变换矩阵是不失一般性,当的时候,变换矩阵为:假设分别有两组基是以为基的向量的坐标.变换矩阵恰好等于上面的向量.下面再给一个三维空间下线性变换的例子...原创 2021-01-06 21:40:36 · 1206 阅读 · 0 评论