Main Page | Report this Page
Computers Forum Index  »  Computer Architecture - FPGA  »  BRAM reconfiguration problem using OPB_HWICAP on...
Page 1 of 1    

BRAM reconfiguration problem using OPB_HWICAP on...

Author Message
ulegat...
Posted: Thu Nov 05, 2009 8:08 pm
Guest
Hello!

I am trying to use partial reconfiguration to change the contents of BRAM
belonging to USER IP. I am able to read the BRAM FRAME, but not able to
write (details about frame contents below).


XPS 10.1 (lin64) OPB_HWICAP 1.10a, FPGA Virtex 4(xc4vlx25)



Here is the example:



Buffer after frame read:



XHwIcap_DeviceReadFrameV4(&hwicap,1,2,2,1,0);



Target BRAM content was initialized with all 1s. Which can be seen from
buffer words 93 to 102.

So the buffer is read ok!



NO| Buffer word contents



0 30008001
1 0000000d
2 ffffffff
3 ffffffff
4 30008001
5 00000007
6 20000000
7 20000000
8 30008001
9 00000004
10 20000000
11 20000000
12 20000000
13 30002001
14 00508041
15 28006053
16 20000000
17 20000000
18 00000000
19 00000000
.

.
.

72 49cf8943
73 fa0eebe8
74 c20eb84d
75 63db694d
76 0000991d
77 4d938a80
78 e6e4cf41
79 df21db17
80 55d627a6
81 0070978d
82 00000000
83 49cf8943
84 fa0eebe8
85 c20eb84d
86 63db694d
87 0000991d
88 4d938a80
89 e6e4cf41
90 df21db17
91 55d627a6
92 0070978d
93 ffffffff
94 ffffffff
95 ffffffff
96 ffffffff
97 0000ffff
98 ffffff80
99 ffffffff
100 ffffffff
101 ffffffff
102 00ffffff
103 00000000





For example that I want to change one word of BRAM contents

I changed word 99 to of the frame buffer to 0f0f0f0f.



Buffer after frame write

XHwIcap_DeviceWriteFrameV4(&hwicap,1,2,2,1,0);





0 30008001
1 0000000d
2 ffffffff
3 ffffffff
4 30000001
5 0000defc
6 20000000
7 20000000
8 30012001
9 10042fdd
10 30018001
11 0167c093
12 30002001
13 00508041
14 30008001
15 00000001
16 20000000
17 30004052
18 00000000
19 00000000
.

.

.
72 49cf8943
73 fa0eebe8
74 c20eb84d
75 63db694d
76 0000991d
77 4d938a80
78 e6e4cf41
79 df21db17
80 55d627a6
81 0070978d
82 00000000
83 49cf8943
84 fa0eebe8
85 c20eb84d
86 63db694d
87 0000991d
88 4d938a80
89 e6e4cf41
90 df21db17
91 55d627a6
92 0070978d
93 ffffffff
94 ffffffff
95 ffffffff
96 ffffffff
97 0000ffff
98 ffffff80
99 0f0f0f0f
100 ffffffff
101 ffffffff
102 00ffffff
103 00000000



Now I want to check if the word 99 is realy reconfigured i read the same
frame again.





Buffer after frame read:



XHwIcap_DeviceReadFrameV4(&hwicap,1,2,2,1,0);



0 30008001
1 0000000d
2 ffffffff
3 ffffffff
4 30008001
5 00000007
6 20000000
7 20000000
8 30008001
9 00000004
10 20000000
11 20000000
12 20000000
13 30002001
14 00508041
15 28006053
16 20000000
17 20000000
18 00000000
.

.

.
72 49cf8943
73 fa0eebe8
74 c20eb84d
75 63db694d
76 0000991d
77 4d938a80
78 e6e4cf41
79 df21db17
80 55d627a6
81 0070978d
82 00000000
83 49cf8943
84 fa0eebe8
85 c20eb84d
86 63db694d
87 0000991d
88 4d938a80
89 e6e4cf41
90 df21db17
91 55d627a6
92 0070978d
93 ffffffff
94 ffffffff
95 ffffffff
96 ffffffff
97 0000ffff
98 ffffff80
99 ffffffff
100 ffffffff
101 ffffffff
102 00ffffff
103 00000000



The word 99 was not configured!!!



I tried to reconfigure LUT contents in the same way and succeeded.

Maybe my bitgen options are incorect, or BRAM content is protected?



BITGEN:

-b
-g ActiveReconfig:Yes
-g CclkPin:PULLUP
-g TdoPin:PULLNONE
-g M1Pin:PULLUP
-g DonePin:PULLUP
-g DriveDone:No
-g StartUpClk:JTAGCLK
-g DONE_cycle:4
-g GTS_cycle:5
-g M0Pin:PULLUP
-g M2Pin:PULLUP
-g ProgPin:PULLUP
-g TckPin:PULLUP
-g TdiPin:PULLUP
-g TmsPin:PULLUP
-g DonePipe:No
-g GWE_cycle:6
-g LCK_cycle:NoWait
-g Security:NONE
#-m
-g Persist:No





Hope to get some answers,



Legat
 
 
Page 1 of 1    
All times are GMT
The time now is Tue Dec 01, 2009 8:33 am