- 博客(9)
- 收藏
- 关注
原创 从 RAM、ROM、FLASH与EFLASH到BOOTROM、BOOTLOADER
XIP:execute in place,就地执行,即芯片内执行,指应用程序可以直接在flash闪存中取指然后译码、执行,不必再把代码读到系统RAM中,flash内执行时指Nor flash不需要初始化,可以直接在flash内执行代码,但往往只执行部分代码,比如用于初始化RAM等。NAND Flash没有采取内存的随机读取技术,它的读取是以一次读取一块的形式来进行的,通常是一次读取512个字节,采用这种技术的Flash比较廉价。存储单元的内容可按需随意取出或存入,且存取的速度与存储单元的位置无关的存储器。
2024-08-23 14:56:54
1397
原创 Nandflash启动和norflash启动
NANDFlash启动: NANDFlash控制器自动把nandflash存储器的前4K载到Steppingstone(内部SRAM缓冲器),并把0x00000000S设置为内部SRAM的起始地址,cpu从内部SRAM的0x00000000开始启动,这个过程不需要程序干涉。Nor flash的有自己的地址线和数据线,可以采用类似于memory的随机访问方式,在nor flash上可以直接运行程序,所以nor flash可以直接用来做boot,采用nor flash启动的时候会把地址映射到0x00上。
2024-08-23 14:56:06
416
原创 MOS管的工作原理
如图所示,当外加正向的栅源电压VGS>0时,在栅极下方的氧化层上出现上正下负的电场,该电场将吸引P区中的自由电子,使其在氧化层下方聚集,同时会排斥P区中的空穴,使之离开该区域。如图下是MOS的结构图,栅极代号是“G”,作用是控制脚,它在结构上表现在电容的一极,氧化物对应电容的介质,在NMOS半导体P结相当于电容的另一极,在PMOS半导体N结相当于电容的另一极(N结P结就是二极管的PN结,N结中有大量活跃电子的存在,P结中有大量正电荷的存在)。当沟道建立之后,如果漏极之间存在一定的驱动电压VDS。
2024-08-23 14:55:34
428
原创 深入解析内存原理:RAM的基本原理
上面所列举的例子中CPU 在一行数据中每次只是存取一个字节的数据,但是在现实世界中是不同的,通常CPU 每次需要调用32bit 或者是64bit 的数据(这是根据不同计算机系统的数据总线的位宽所决定的)。知道了RAM 的基本结构是什么样子的,下面我们就谈谈RAM存储字节的过程是怎样的:上面的示意图1 显示的也仅仅是最简单状态下的情况,也就是当内存条上仅仅只有一个RAM 芯片的情况。另外,需要注意的是,RAM 内部存储信息的矩阵并不是一个正方形的,也就是行和列的数目不是相同的--行的数目比列的数目少。
2024-08-01 09:27:47
920
1
原创 python模块 xml--操作文件xml
如果元素是从XML文件创建的,则text属性保存元素的开始标记和它的第一个子标记或结束标记之间的文本,或者None, tail属性保存元素的结束标记和下一个标记之间的文本,或者None。解析的基本过程:读到一个XML开始标签,就会开始一个事件,然后事件就会调用一系列的函数去处理一些事情,当读到一个结束标签时,就会触发另一个事件。DOM的解析器在解析一个XML文档时,一次性读取整个文档,如果要处理的XML文本比较大的话,就会很耗内存,所以DOM一般偏向于处理一些小的XML,(如配置文件)比较快。
2024-08-01 09:25:57
1682
原创 函数调用过程中的栈帧结构及其变化
我们刚刚把旧的%ebp的值保存了下来,但是%ebp值并没有发生改变,而我们现在在执行一个新的函数,那么%ebp保存的应该是新的栈帧的栈底。所以才把当前%esp储存的地址赋值给%ebp。栈帧是一段有界限的内存区间,由最顶端的两个指针界定,寄存器%ebp为帧指针,而寄存器%esp为栈指针(也就是说寄存器%ebp保存了所分配内存的最高地址,寄存器%esp保存了所分配内存的最低地址)。当前%ebp保存的是调用者栈帧的栈底地址,那么push %ebp就是将调用者栈帧的栈底地址压入栈,即保存旧的%ebp。
2024-07-31 17:26:38
372
原创 【Python内置函数】
内置函数Python 解释器内置了很多函数和类型,任何时候都能使用。以下按字母顺序给出列表。内置函数Aabs()aiter()all()anext()any()ascii()Bbin()bool()breakpoint()bytearray()bytes()Ccallable()chr()classmethod()compile()complex()Ddelattr()dict()dir()divmod()
2024-07-31 17:24:35
384
原创 python中auto定义变量
当然,我们可以使用常规的方式手动定义变量,但是Python提供了一个更方便的方法,即使用auto关键字自动定义变量。在本文中,我将教你如何在Python中使用auto关键字定义变量。在这个例子中,我们定义了一个名为auto_var的变量,并使用auto.auto()函数来自动定义它。一旦我们定义了自动变量,我们就可以像使用任何其他变量一样使用它。auto模块是一个第三方库,它提供了自动定义变量的功能。至此,我们已经完成了"Python中auto定义变量"的所有步骤。在这个例子中,我们打印了自动定义的变量。
2024-07-31 17:22:06
409
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人