- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
DFBの使用方法を学ぶため、以下のCE95306サンプルプログラムをダウンロードして動かしてみました。
http://www.cypress.com/documentation/code-examples/ce95306-digital-filter-block-assembler-psoc-35lp
DFBコンポーネント上のCodeタブに記載されているアセンブラコードをシミュレートして追ったのですが、
想定どおりの動きを見ることができません。
私は「write_bus」ステートを1周すると行列の1つの要素に対して計算を行い、出力されると想定しています。
ですのでBus1にDMA_INで送られている「32,64,128,256,512,1024」を記載すれば6周して終わると想定していたのですが、
1周で2つのデータが抜き出され、3周するとシミュレートが終わってしまいます。
正常なシミュレートをするために、Busに記載すべきデータや手順を教えてください。
また、私の想定に誤りがございましたらご指摘ください。
以上です。よろしくお願いいたします。
- Labels:
-
PSoC 5LP
- Tags:
- dfb
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Would you mind to translate your post into English language? So not everyone who wants to help you must do it.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Mr.Bob.
Thank you for your reply. I translated it into English.
In order to learn how to use DFB, I downloaded and run the following CE95306 sample program.
http://www.cypress.com/documentation/code-examples/ce95306-digital-filter-block-assembler-psoc-35lp
I simulated the assembler code on the Code tab on the DFB component, but I can not see the expected behavior.
I think that once the "write_bus" state is executed for one cycle, computation is done on one element of the matrix and output is done.
For that reason, I assumed that the program will end in 6 cycles by writing "32, 64, 128, 256, 512, 1024" sent in DMA_IN to "Bus 1", but two data are unplugged in one cycle and the simulation will end after 3 cycles.
Please tell me what data and procedures should be written to Bus in order to simulate properly.
Also please point out if there is any mistake in my opinion.
Best Regards.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Miyakawa-san,
There are few examples of DFB assembly programming available.
Check this and other posts of <Magnus Lundin> and <matejs>:
http://www.cypress.com/forum/psoc-5-device-programming/psoc-5lp-dfb-assembler
Tools for Art and Microcomputers: PSoC 5LP DFB assembler
http://www.cypress.com/forum/psoc-5-device-programming/average-calculation-using-dfb-psoc5
/odissey1
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
odissey1-san,
Thank you for your reply.
I'm going to use it as an reference.
Best Regards.
Miyakawa
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Miyakawa-san,
While simulation, user needs provide data for StageA input at Bus1 sub-window in Code tab. You can enter them as a 24-bit value in hex, decimal, or binary format. You can also import data to the Bus1/Bus2 text fields in .txt and .data file formats.
Since you do not have any value at StageA (Bus1 winodow in simulator), simulation gets terminated at third cycle with warning 'Bus input data exhausted: Simulation terminating'. Please make use of Bus1 window in DFB simulator.
Best Regards,
Geona Mary
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Geona-san,
I already tried it by entering a number in Bus1.
Specifically, how should I write numbers on Bus 1?
I think that if you enter "32, 64, 128, 256, 512, 1024" in Stage_A, "1, 2, 4, 8, 16, 32" will be output to Hold_A.
But, the simulation result shows only three outputs. I will attach the result.
Best Regards.
Miyakawa