ΣSigmaStudio Ask AI Русский Log in

FIR_Inbase

Processors & DSP macci77 Apr 18, 2016 00:00 2 replies Original on forum ↗
Subscribe
macci77 Question
Apr 18, 2016 00:00

when using the xxxxx example for running FIR accelerator for SC584, the FIR_Inbase register gets this value : FIRA_TCB1[8]=((int)InputBuff1>>2)|0xA000000;

why is the value of 0xA000000 added? it isnt mentioned in the manual by what I can see.

ADIApproved Reply
Apr 25, 2016 00:00

The FIR accelerator (and all other peripherals) need to add an offset (different for SHARC1 and SHARC2 memory space and S1 and S2 ports) to access SHARC core's L1 memory in the system (called as multiprocessor memory) space. FIR accelerator expects the addresses to be 32 bit word (normal word space) aligned. However, by default, the buffers are place in byte word memory space. Thus, the L1 address is right shifted by 2 and then an offset of 0xA000000 = 0x28000000>>2) is added. See the following table in the data sheet for more details.

da11ea3f02654421aba4d57148efee6a.png
da11ea3f02654421aba4d57148efee6a.png
da11ea3f02654421aba4d57148efee6a.png-1082x494.png
da11ea3f02654421aba4d57148efee6a.png-1082x494.png
EZAdministrator Reply
Aug 2, 2018 00:00

This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.

Thank you,
EZ Admin