原创 ADI DSP基础教程:Blackfin的寄存器详解(以BF533为例)

2017-5-5 11:13 1336 9 9 分类: 处理器与DSP

这一篇就来简单的讲一讲Blackfin中BF533的寄存器吧,其他型号均可作为参考。


从上图我们可以看到,红色框框内的是core component,剩下的则是memory unit。还是英文得了,中文好拗口哇。

Blackfin Processors are register-intensive devices

All computations are performed on data contained in registers

All peripherals are setup using registers

Memory is accessed using pointers in address registers


There are two ways to access registers on the ADSP-BF533

Directly by name

Memory-mapped registers (MMRs)


Register is very important for blackfin processors because blackfin processors are register-intensive devices. All Blackfin processor operation, such as computation, peripheral setup and memory accessing need register. We can see that blackfin can do nothing without register. Take bf533 as an example, there are two ways to access the registers. Then let’s see what register we can access.


ADSP-BF533 Core Registers:

Core registers accessed by name


Data Registers: R0-R7

Accumulator Registers: A0, A1

Pointer Registers: P0-P5, FP, SP,USP

DAG Registers: I0-I3, M0-M3, B0-B3, L0-L3

Cycle Counters: Cycles, cycles2

Program Sequencer: SEQSTAT

System Configuration Register: SYSCFG

Loop Registers: LT[1:0], LB[1:0], LC[1:0]

Interrupt Return Registers: RETI, RETX, RETN, RETE


For core register, All the registers in the list can accessed directly by name. ?This is the example. This instruction load data register R0 with contents of System configuration register.


You can see ,all the data register are 32-bit wide. They are referred to as dreg.


Data Registers: R0-R7

Accumulator Registers: A0, A1

Pointer Registers: P0-P5, FP, SP,USP


A majority of registers are memory mapped and must be accessed indirectly


Core MMRs are used to configure the core registers

They are listed in Appendix A of the HRM.

All Core MMRs must be accessed with 32-bit reads or writes.

System MMRs are used to configure all other peripherals

They are listed in Appendix B of the HRM.

Some System MMRs must be accessed with 32-bit reads or writes and others with 16-bit reads or writes (See the HRM for details).


The addresses of the core and system MMRs are defined in the defBF533.h, defBF532.h, defBF531.h and defLPblkfin.h header files.


MMRs can only be accessed in Supervisor mode.


Example:


P0.H = hi(MMR_NAME); // load upper 16-bits of MMR address to address register

But a majority of register are memory mapped and they can not accessed directly by name.


这种太技术化的厂家写好的描述性文章,我就不做翻译了,可能看英文会更清楚一些。

任何ADI DSP的问题,均可联系OP的QQ:5516164,微信:OpenADSP
OP的网站:www.openadsp.com
OP的论坛:www.openadsp.com/bbs
OP的官方淘宝店:https://shop108086345.taobao.com/
ADI DSP中文资料全集(含视频教程)的淘宝链接:https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-5192690539.12.Ck3v8f&id=39935721554

文章评论0条评论)

登录后参与讨论
相关推荐阅读
sale_992263015 2017-12-27 09:45
CCES软件开发从0开始(1)
    2017年即将结束,全新的2018年马上开启,OP决定在新的一年里,把ADI的这个新软件CCES玩个通透!    我有几乎所有ADI DSP的开发板,以及成堆的仿真器和软件硬件开发资料,这个不...
sale_992263015 2017-05-08 16:45
Blackfin的最优质型号:BF531/BF532/BF533
上一篇简单的列了一下ADI的DSP,其实ADI处理器家族还有一些比较非主流、冷僻或者比较新的系列没有提到,比如工业和军工里用到的21xx系列,音频专用的SigmaDSP系列,ARM和单片机内核的ADu...
sale_992263015 2017-05-08 12:56
818 ADI公司的DSP发展历程-所有型号一一道来
ADI,美国模拟器件公司,现在国内叫亚德诺半导体(台湾人取的奇葩名)。 它的DSP,我记得是从SHARC开始的,一个非常纯碎的浮点DSP内核,2106X,2116X,2126X,218X等等,这些被统...
sale_992263015 2017-05-08 10:07
ADI DSP基础教程:BF533/BF531的GPIO和中断(下)
接上一篇,继续来整Blackfin的IO跟中断! BF533的GPIO视频教程优酷链接:http://v.youku.com/v_show/id_XMjg2OTIwNDQw.html @mbb_emb...
sale_992263015 2017-05-08 09:58
ADI DSP基础教程:BF533/BF531的GPIO和中断详解(上)
Blackfin 系列处理器的初学教程很少,很多初学者不知如何来上手这款DSP。为方便初学者更快的学会使用DSP,成为DSP 高手,本章节将详细介绍DSP 的接口使用,以最基础的示例来诠释Blackf...
sale_992263015 2017-05-05 11:18
ADI DSP基础教程:Blackfin的内核之MSASHIFTER(BF533为例)
BARREL-SHIFTER,看图说话! Overview: The shifter performs bitwise shifting for 16-bit, 32-bit or 40-bit i...
我要评论
0
9
1
2
3
4
5
6
7
8
9
0
关闭 热点推荐上一条 /3 下一条