ICode9

精准搜索请尝试: 精确搜索
  • Spyglass CDC工具使用(四)2022-07-07 16:06:33

      最近一直在搞CDC (clock domain crossing) 方面的事情,现在就CDC的一些知识点进行总结。 做CDC检查使用的是Spyglass工具。以下内容转载自:Spyglass之CDC检查(4) | 码农家园 (codenong.com) 文章目录 同步方法 哪些信号需要同步 常用同步方法 Rules AC_unsync01/02 AC_sync01

  • DDR4 SDRAM - 2. 初始化、训练和校准2022-07-05 20:35:00

    如前所诉,本文为翻译学习大佬博客。强烈推荐直接去看大佬原博:DDR4 SDRAM - Initialization, Training and Calibration 引言 当带有DRAM子系统的设备上电后,在 DRAM 进入运行状态之前会发生许多事情。 以下来自JEDEC规范的状态机显示了DRAM从上电后的各种状态切换。         

  • 如何用好 vim 里面的宏2022-07-02 22:00:11

    引言 在我学习 vim 的过程中,最具有启发意义的一句话是: vim 其实是一门编程语言 很早之前我就接触过 vim,但是当时 vim 的按键组合和按键的逻辑对我来说很难记忆,再加上 vim 的界面实在太过于复古,于是我就转向了比较现代的文本编辑器。但当我学完 Missing semester 的时候,我对 vim

  • 【逆向学习】逆向学习笔记(一)2022-07-01 21:01:40

    脏字 污染逆向软件分析结果的字节。 常见的脏字 0x8e(call) 0xbe 重要的寄存器 寄存器名 用途 eax 返回值 重要的工具 Z3 IDA

  • 软件设计师-计算机系统基础2022-06-29 13:03:23

    计算机系统硬件的基本组成 计算机系统由硬件和软件组成,它们协同工作来运行程序。 基本硬件系统:运算器,控制器,存储器,输入和输出设备5大 部件组成。 中央处理单元:运算器,控制器。(CPU) 中央处理单元 是计算机系统的核心部件,负责获取程序指令、对指令译码并加以执行。 CPU的功能 程序控

  • 程序分析与优化 - 8 寄存器分配2022-06-26 14:31:18

    本章是系列文章的第八章,用着色算法进行寄存器的分配过程。 本文中的所有内容来自学习DCC888的学习笔记或者自己理解的整理,如需转载请注明出处。周荣华@燧原科技 寄存器分配 寄存器分配是为程序处理的值找到存储位置的问题 这些值可以存放到寄存器,也可以存放在内存中 寄存器更快

  • stm32 GPIO的使用2022-06-25 19:31:46

      STM32F4 的 IO 可以由软件配置成如下 8 种模式中的任何一种:         1、输入浮空         2、输入上拉         3、输入下拉         4、模拟输入         5、开漏输出         6、推挽输出         7、推挽式复用功

  • linux arm32中断子系统学习总结(一)--- 预备知识2022-06-25 16:34:09

    一、预备知识   中断处理与cpu体系结构强相关,比如x86处理器与arm处理器对中断的处理方式是不一样的;本文对arm32的中断子系统进行分析,因此首先需要熟悉一些arm32体系结构的知识。 1.1 arm32处理器的运行模式 处理器模式 描述 用户模式(User, usr) 正常程序执行的模式

  • objc_msgSend 的原型到底是什么2022-06-25 10:33:39

    原文: https://mikeash.com/pyblog/objc_msgsends-new-prototype.html 总结 : objc_msgSend 变了 objc_msgSend 和 objc_msgSendSuper 的类型申明改了,那他们实际上接受什么参数,以及它实际上返回什么? objc_msgSend 不得不用汇编 objc_msgSend 是用汇编实现的,不只是为了快,只用 C,objc_m

  • Verilog标准手册阅读笔记2022-06-24 16:04:09

    引言 该文章不适用于Verilog入学 Verilog标准手册下载地址: Verilog标准手册 简介 基本元件模块:逻辑门和用户定义的原语模块(UDPs) NET:表示电路连线或是总线的网络 寄存器:可以作为输入信号连接到某个具体模块的输入口 模块中每个initial,always,连续赋值assign,UDP和各种逻辑门结构块

  • 逆向工程核心原理2022-06-23 10:35:09

    一.熟悉调试器 1.设置“大本营”的四种方法 每次重新运行调试器,都会回到程序的入口点,为方便使用,可以设置某个重要的点(地址),使调试可以快速转到设置点上。 (1)Goto命令 记录设置大本营的地址,执行Go to(Ctrl + G)命令,输入地址,使光标定位到该地址,按F4,让调试流运行到该处。 (2)设置断点 按F2

  • Windbg查看调用堆栈(k*)2022-06-21 19:00:31

       无论是分析程序崩溃原因,还是解决程序hang问题,我们最常查看的就是程序调用堆栈。学会windbg调用堆栈命令,以及理解堆栈中的各个参数的意义就显得至关重要。 上图就是一个典型的Windbg堆栈,如果不理解ChildEBP、RetAddr、Args to Child等参数意义,以及它们之间的来龙去脉,调试工

  • 对汇编程序中分段的理解2022-06-21 12:01:51

    在8086处理器中包含各种段寄存器,如程序段寄存器cs、数据段寄存器ds、堆栈段寄存器ss等,这些寄存器分别存放着程序、数据和堆栈所在段的段地址,当取指令时,采用cs:ip进行寻址;当访问内存时,采用ds:[?]寻址;当进行堆栈操作时,采用ss:sp寻址,三者的实质都是指针。那为什么用3个而不是1个呢?答

  • RT1052同时开两路ADC要怎么做2022-06-19 17:34:00

    楼主你好!如果要同事开两路ADC 各自8通道,你需要把对应通道的寄存器全部配置了。 <ignore_js_op> 4.jpg (399.85 KB, 下载次数: 8) 下载附件 2021-10-15 10:26 上传   不过, code的执行是顺序的,所以可能还是有一点时间上延时,因为你不同通道的寄存器也不一样,所以尽量都放一

  • Intel 汇编 和 AT&T 汇编2022-06-18 14:02:32

    1. 汇编语言的流派 x86 汇编指令有两大风格,分别是: Intel 汇编 AT&T 汇编 2. 汇编语言的运作模式 实模式 16 位保护模式 32 位保护模式 3. x86 寄存器 (1)寄存器分类 16 位 自 Intel 8086和 8088 起,有 14 个 16 比特寄存器。其中四个(AX, BX, CX, DX)是通用寄存器,每个寄存器

  • 内嵌汇编2022-06-18 14:00:09

    内嵌汇编(英语:Inline assembly)通俗来讲,就是将汇编语言代码嵌入到高级语言的程序中,例如嵌入到 C 语言程序中。 linux 操作系统下,C 语言程序的编译一般使用 GCC 来编译,而 GCC 编译器提供了内嵌汇编的功能,也就是说可以在 C 代码中直接内嵌汇编语言语句。 GNU 汇编器使用的是 AT&T 汇编

  • 操作系统 :AArch64体系--ARM最新编程架构模型剖析2022-06-18 09:03:33

    本节来讲讲 ARM 的 AArch64 体系结构,扩展一下视野。 看看什么是 AArch64 体系,然后分析一下 AArch64 体系有什么特点,最后了解一下 AArch64 体系下运行程序的基础,包括 AArch64 体系下的寄存器、运行模式、异常与中断处理,以及 AArch64 体系的地址空间与内存模型。 什么是AArch64体系

  • vivado没用上的寄存器变量2022-06-16 23:05:50

    vivado中定义了但没用上的寄存器变量,在综合时会被移除,即没有综合出来。(如下cnt,虽然在y的过程块中用了cnt作为判断条件,但实际上cnt用了跟没用效果一样,所以综合时cnt_reg就被放弃了),这将导致虽然观察波形时可以看cnt变量,但他恒等于X(未定态)。     [Synth 8-6014] Unused sequential

  • ARM37个寄存器和7种工作模式2022-06-16 16:35:28

    ARM 37个寄存器 31个通用寄存器,包括 PC(程序计数器)在内,都是 32 位的寄存器。 r0~r3 主要用于子程序间传递参数 r4~r11 主要用于保存局部变量,但在 Thumb 程序中,通常只能使用 r4~r7 来保存局部变量 r12 用作子程序间scratch 寄存器ip r13 通常用做栈指针sp r14 寄存器又被称为

  • 汇编语言 笔记2022-06-16 16:00:58

    第一章: 存储器:CPU想要工作,必须向它提供指令和数据才行,而指令和数据,都放在存储器中。 存储单元:一个存储器可以被划分为若干个存储单元,每个存储单元从0开始编号,这个编号可以看作存储单元的地址,CPU通过这个编号来找到它。每个存储单元可以存储8个二进制即8个bit,也就是一个存储单元可

  • 特定周期的时钟驱动应该怎么设计(设计时钟?设计使能)2022-06-16 13:36:41

    在逻辑设计的过程中,有时候需要特定周期的时钟信号来控制输出,fpga板上的时钟不符合要求,就需要自己来设计产生一个时钟。 常规思路是使用一个计数器来根据全局时钟产生特定周期的时钟(代码如下),然后使用这个sl_clk时钟接入其他电路触发器的clk接口来驱动其他电路。 reg [] counter

  • lab3学习2022-06-15 22:04:22

    struct Env { struct Trapframe env_tf; // Saved registers LIST_ENTRY(Env) env_link; // Free LIST_ENTRY u_int env_id; // Unique environment identifier u_int env_parent_id; // env_id of this env�

  • day12022-06-14 00:31:08

    关于寄存器地址   对某个寄存器的某一位置1,其他值不变: *(unsigned int *)0x4000 0000 |=(1<<0)         对某个寄存器的某一位置0,其他值不变: *(unsigned int *)0x4000 0000 &=~(1<<0)   学习中 发现了 这样一个语法    *(unsigned int *)0x4001 0c00 |=~( (1) << (4*0) )  

  • 程序计数器(PC计数器)2022-06-12 18:35:13

    JVM中的程序计数寄存器(Program Counter Register)中,Register的命名源于CPU寄存器,寄存器存储指令相关的现场信息。CPU只有把数据装载到寄存器才能运行。 这里并非是广义上所指的物理寄存器,或许将其翻译为PC计数器(或指令计数器)会更加贴切(也称为程序钩子),并且也不容易引起一些不必要

  • tsc之x86、armv8的cpu如何获取高精度时间戳以及高精度时间2022-06-11 00:34:50

    替换x86 rdtsc汇编指令_鲲鹏通用_TaiShan服务器代码移植参考_移植相关问题处理_嵌入式汇编类问题_华为云 (huaweicloud.com) 替换rdtsc汇编指令_鲲鹏处理器_处理器指令替换案例集_源码修改类案例_华为云 (huaweicloud.com) http://ilinuxkernel.com/?p=1755   在编程时,我们往往

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有