cancel
Showing results for 
Search instead for 
Did you mean: 

PSoC 5, 3 & 1

ShMi_1495391
Contributor

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に記載すべきデータや手順を教えてください。

また、私の想定に誤りがございましたらご指摘ください。

以上です。よろしくお願いいたします。

0 Likes
6 Replies
Bob_Marlowe
Expert II

Would you mind to translate your post into English language? So not everyone who wants to help you must do it.

Bob

0 Likes
ShMi_1495391
Contributor

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.

0 Likes
odissey1
Honored Contributor II

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

0 Likes
ShMi_1495391
Contributor

odissey1-san,

Thank you for your reply.
I'm going to use it as an reference.

Best Regards.

Miyakawa

0 Likes
GeonaP_26
Moderator
Moderator

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

0 Likes
ShMi_1495391
Contributor

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.simulate_result.png

Best Regards.

Miyakawa

0 Likes