Hi
I have a AWE signal flow(.awd) which can play a bin file(multiple wav files are formed) on PC(AWE server Native connection).
I want this AWE signal flow to run on the SC594 Core1 target(AWE server RS232 connection).
Now, I have this signal flow bin file(.awb), and I also have the wave files to play (multiple wav files form a bin file).
But, I can,t find the way to write the FFSStarAddr(module:FFS Wrapper) to run this signal flow on the SC594 target.
notes:
FFS Wrapper help Discussion:
Audio Weaver module which constructs Flash File System instance from the address in RAM, which is used as input e.g. to wave player supporting FFS. This module accepts file system start address on input pin, constructs file system structure instance and send it through the output pin. This module supports additional argument through which user can specify Audio Weaver Flash File System (.bin) file name to simulate functionality on Native-PC target.
On the Native-PC target, input pin is ignored and flash file system is constructed from file name supplied through the argument. If the file name is empty input pin will be checked.
On a 64-bit system, user has to provide the 64-bit address of a bin file stored in RAM on two channels of fsStartAddr. Similarly the module outputs a 64-bit address on fsInstance output pin.
11:23pm
Hi Seven,
Depending on your system we generally use the SourceInt module with numChannels 2 and blockSize 1 to place the RAM address where the bin file is stored. Output from SourceInt with the above configuration is connected to the FFSWrapper module. On 32-bit systems, the user has to place the RAM address in SourceInt.value[0] using control API's channel1 (value[0]) represents the lower 32-bit address and channel2 (value[1]) represents the upper 32-bit address. In the screenshot below Green mark indicates lower 32-bit address and Red mark indicates upper 32-bit address.
Hope this helps you!
--Karishma
4:40am
Hi, Karishma
I read it carefully, but I still have some questions.
1、We generally use the SourceInt module with numChannels 2 and blockSize 1 to place the RAM address where the bin file is stored.
That means ,firstly I should read the bin file data from flash to RAM, then place this RAM address to SourceInt module, right?
2、 The user has to place the RAM address in SourceInt.value[0] using control API's channel1 (value[0]) represents the lower 32-bit address .
what about using control API's channel1 (value[0]) mean? I can not understand it , can you please explain it?
3、I can not see the screen shot ,can you please reload it?
Hope to hear from you soon, Thank you!
Seven
1:54pm
Hi Seven,
I think I needed to attach the screen shot to be visible in the email notification as well. Yes you need to read the address and then place it in the SourceInt as shown in Screenshots SourceInt and SourceInt_Array. Rt Click on the SourceInt module --> Properties --> Array: value Tab --> Column 1 value is the lower 32 bit that you input here and the Column 2 value is the Upper 32 bit.
This is then given as input to the FFS Wrapper where you can input the Bin file. Rt Click on the FFSWrapper module --> Arguments --> FFSFileName.
I am attaching the screenshots and have modified your example awd to include the SourceInt module along with it. As per your previous comment you have already done the steps after this. Let me know if you need more explanation.
11:01pm
Hi,Karishma
When I init AWE instance with awe_init(&g_AWEInstance) in SC594 ARM core, the CCES IDE tell me that A non-recoverable error or exception has occurred.
awe_init(&g_AWEInstance) is a library function ,I can not see the cause that it crushed.
When I change HAS_FLASH_FILESYSTEM 1 to 0, it can be ok, but the flash file system will be useless.
Please see the screen shot, thanks a lot!
Look forward to your answer soon.
Seven