Embedded record 1
Posted kumata
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Embedded record 1相关的知识,希望对你有一定的参考价值。
简单整理了一些嵌入式底层需要接触的相关概念。
# CPU
CU. Control Unit. send need-clac-data -> ALU clac -> get result send back -> to save in memory
ALU Arithmetic Logic Unit. Binary clac, such as add/sub/mult(except interger division)
MMU. Memory Management Unit. registers like: MAR MDR PC AC CIR
- MAR. Memory adress register. save will-be-visited-data ‘s address
- MDR. Memory data register. saveor will-write-in-RAM data or from-RAM-data
- PC. Program Counter. save next-exe-instruction ‘s address
- AC. Accumulator. save ALU and CU ‘s middle-result data
- CIR. Current Instruction Register. save current executing instruction
# Bus types
数据总线DB. Data Bus. 传输数据. CPU -- RAM 来回传数据 双向
地址总线AB. Address Bus 传输地址. 指定RAM中存储数据的地址
控制总线CB(系统总线). Control Bus 传输命令(控制信号和时序信号). 将CU的信号传至周边设备
扩展总线. Expansion Bus 计算机和外部设备通信的总线,如ISA PCI
# Bus tech indicators
Bandwidth: 单位时间内总线上传送的数据量
Bitwidth: 总线能同时传送的二进制数据的位数,like 32位/64位
Working Freq: MHZ为单位
# RAM "random access memory"
SRAM. cpu cache, don not need to reflesh
DRAM. keep reflesh save data
SDRAM. keep reflesh, quick speed, large capacity
DDR SDRAM. dual channal
# ROM "read-only memory"
1.几K到几十K byte的ROM. 存储刚上电时对cpu和一些核心外设进行初始化的代码
2.NOR FLASH. 1M~4M,存放代码,可以由CPU直接取指并执行
3.NAND FLASH. 存放程序/数据,需要CPU加载到内存中使用
# Core peripheral
初始化code存放在ROM中,CLOCK, serial port, MMU, DRAM, FLASH
# gcc compile
gcc -E -o hello.i hello.c pretreatment
gcc -S -o hello.s hello.i compile
gcc -c -o hello.o hello.s assembler
gcc -o hello hello.o link
# JTAG 联合测试工作组
1. Boundary test 2. use for burn/debug/probe port
JTAG PIN : TDI(input_data test) TDO(output_data test) TMS(mode_choose test) TCK(clock_input test) TEST(reset_test)
Jlink(SEGGER product) --> JTAG仿真器
# UART 通用异步串行口
baud control link , slow speed
long distance(10m) 异步 设备-设备
TXD->RXD RXD<-TXD GND-GND
# SPI 串行外设接口
short distance(<=1m) 4lines high-speed
同步 芯片-芯片 板上通信
Master-Slave: SCK->SCK MOSI->SIMO MISO<-SOMI SS->SS
# I2C 双向同步串行总线
short distance(<=1m) 2lines 同步 芯片-芯片 板上/板间通信
SCL(Clock) / SDA(Data) -> 2 data buses + Ground
communication speed : 100KHz / 400khz / 1Mhz / 3.2Mhz -> slow
Master ----> Slave every device have read address and write address
# GPIO 通用输入输出/总线扩展器
低功耗 小封装 低成本 布线简单(仅需2条i2C or 3条SPI buses)
提供芯片组额外功能(control monitor)
# openOCD 开源片上调试器
对嵌入式设备调试、系统编程与边界扫描
1.加密狗(并行、基于USB) 2.GDB调试(允许ARM7/ARM9/XScale/Cortex-M3) 3.Flash编程(擦写Flash支持外部CF2兼容NORflash)
以上是关于Embedded record 1的主要内容,如果未能解决你的问题,请参考以下文章
Windows 7 Embedded - 以编程方式禁用磁盘缓存:
排除特定测试的 embedded.mongodb.enabled