SECTIONS
{
.vectors BLOCK (64k):
{
*(.vectors)
} > extmem
.text :
{ *(.text)
*(.text.*)
*(.gnu.linkonce.t*) } > extmem
.data :
{ *(.data)
*(.got2) *(.rodata)
*(.fixup) *(.data.*)
*(.gnu.linkonce.d*)
*(.rodata.*)
*(.gnu.linkonce.r*)
*(.eh_frame)
} > extmem
/* small data area (read/write): keep together! */ .sdata :
{ *(.sdata) } > extmem
.sbss :
{
. = ALIGN(4); *(.sbss)
. = ALIGN(4); } > extmem
__sbss_start = ADDR(.sbss); __sbss_end = ADDR(.sbss) +
SIZEOF(.sbss);
/* small data area 2 (read only) */ .sdata2 : { *(.sdata2) } >
extmem
.bss :
{
. = ALIGN(4); *(.bss)
*(COMMON)
. = ALIGN(4);
__bss_end = .;
/* add stack and align to 16 byte boundary */
. = . + _STACK_SIZE;
. = ALIGN(16);
__stack = .;
_heap_start = .;
. = . + _HEAP_SIZE; . = ALIGN(16);
_heap_end = .;
} > extmem
__bss_start = ADDR(.bss);
.boot0 :
{
*(.boot0) _end = .; } > extmem
.boot : { *(.boot) } > extmem
}
4.5 Les fichiers batch pour le modular design
################ Fichier batch copy_ucf_ngc
####################
copy ..\ISE\top.ucf .\Top\Initial\top.ucf
copy ..\ISE\top.ucf .\Top\Assemble\top.ucf
copy ..\ISE\top.ucf .\Modules\compteur_lent\top.ucf copy
..\ISE\top.ucf .\Modules\clignotant\top.ucf
copy ..\ISE\top.ucf .\Modules\ppc_subsystem\top.ucf copy
..\ISE\top.ucf .\Modules\compteur_rapide\top.ucf copy ..\ISE\top.ngc
.\Top\Initial\top.ngc
copy ..\ISE\top.ngc .\Top\Assemble\top.ngc
copy ..\ISE\top.ngc .\Modules\compteur_lent\top.ngc copy
..\ISE\top.ngc .\Modules\compteur_rapide\top.ngc copy ..\ISE\top.ngc
.\Modules\clignotant\top.ngc
copy ..\ISE\top.ngc .\Modules\ppc_subsystem\top.ngc
copy ..\ISE\compteur.ngc .\Modules\compteur_lent\compteur.ngc
copy ..\ISE2\compteur.ngc .\Modules\compteur_rapide\compteur.ngc
copy ..\ISE3\compteur.ngc .\Modules\clignotant\compteur.ngc copy
..\ISE4\compteur.ngc .\Modules\clignotant_rap\compteur.ngc
copy ..\ISE\system.ngc .\Modules\ppc_subsystem\system.ngc
pause
################ Fichier batch build_ppc_subsystem
###############
copy ..\ISE\top.ucf .\Modules\ppc_subsystem\top.ucf copy
..\ISE\top.ngc .\Modules\ppc_subsystem\top.ngc cd .\Modules\ppc_subsystem
.\active.bat
################ Fichier batch build_compteur_lent
#####################
copy ..\ISE\top.ucf .\Modules\compteur_lent\top.ucf copy
..\ISE\top.ngc .\Modules\compteur_lent\top.ngc
copy ..\ISE\compteur.ngc .\Modules\compteur_lent\compteur.ngc cd
.\Modules\compteur_lent
.\active.bat
pause
############# Fichier batch build_compteur_rapide
################ copy ..\ISE\top.ucf .\Modules\compteur_rap\top.ucf
copy ..\ISE\top.ngc .\Modules\compteur_rap\top.ngc
copy ..\ISE2\compteur.ngc .\Modules\compteur_rap\compteur.ngc
cd .\Modules\compteur_rap
.\active.bat
pause
################ Fichier batch build_clignotant_lent
################### copy ..\ISE\top.ucf
.\Modules\clignotant\top.ucf
copy ..\ISE\top.ngc .\Modules\clignotant\top.ngc
copy ..\ISE3\compteur.ngc .\Modules\clignotant\compteur.ngc
cd .\Modules\clignotant
.\active.bat
pause
################ Fichier batch build_clignotant_rapide
##################### copy ..\ISE\top.ucf
.\Modules\clignotant_rap\top.ucf
copy ..\ISE\top.ngc .\Modules\clignotant_rap\top.ngc
copy ..\ISE4\compteur.ngc
.\Modules\clignotant_rap\compteur.ngc
cd .\Modules\clignotant_rap .\active.bat
pause
################ Fichier active.bat du design
compteur_lent #############
ngdbuild -p xc2vp7-fg456-7 -modular module -active compteur -uc
top.ucf top.ngc compteur_lent.ngd >trace.txt map -p xc2vp7-fg456-7
compteur_lent.ngd -o compteur_map.ncd >>trace.txt
par -w -ol high compteur_map.ncd compteur_lent_map_routed.ncd
>>trace.txt
pimcreate -ncd compteur_lent_map_routed.ncd ..\..\Pims
bitgen -d -w -g ActiveReconfig:yes -b
compteur_lent_map_routed.ncd compteur_lent.bit
########### Fichier active.bat du design compteur_rapide
###############
ngdbuild -p xc2vp7-fg456-7 -modular module -active compteur -uc
top.ucf top.ngc clignotant_rapide.ngd >trace.txt map -p xc2vp7-fg456-7
clignotant_rapide.ngd -o compteur_map.ncd >>trace.txt
par -w -ol high compteur_map.ncd clignotant_rapide_map_routed.ncd
>>trace.txt
# pimcreate -ncd clignotant_rapide_map_routed.ncd ..\..\Pims
bitgen -d -w -g ActiveReconfig:yes -b
clignotant_rapide_map_routed.ncd clignotant_rap.bit
############# Fichier active.bat du design
clignotant_lent ############
ngdbuild -p xc2vp7-fg456-7 -modular module -active compteur -uc
top.ucf top.ngc clignotant.ngd >trace.txt
map -p xc2vp7-fg456-7 clignotant.ngd -o compteur_map.ncd
>>trace.txt
par -w -ol high compteur_map.ncd clignotant_lent_map_routed.ncd
>>trace.txt
# pimcreate -ncd clignotant_lent_map_routed.ncd ..\..\Pims
bitgen -d -w -g ActiveReconfig:yes -b clignotant_map_routed.ncd
clignotant.bit
pause
######## Fichier active.bat du design clignotant_rapide
##############
ngdbuild -p xc2vp7-fg456-7 -modular module -active compteur -uc
top.ucf top.ngc clignotant_rapide.ngd >trace.txt map -p xc2vp7-fg456-7
clignotant_rapide.ngd -o compteur_map.ncd >>trace.txt
par -w -ol high compteur_map.ncd clignotant_rapide_map_routed.ncd
>>trace.txt
# pimcreate -ncd clignotant_rapide_map_routed.ncd ..\..\Pims
bitgen -d -w -g ActiveReconfig:yes -b
clignotant_rapide_map_routed.ncd clignotant_rap.bit
pause
########## Fichier active.bat du module ppc_subsystem
##############
copy ..\..\..\implementation\*wrapper.ngc .\*wrapper.ngc
ngdbuild -p xc2vp7-fg456-7 -modular module -active system -uc
top.ucf top.ngc system.ngd
map -p xc2vp7-fg456-7 system.ngd -o system_map.ncd
par -w -ol high system_map.ncd system_map_routed.ncd
pimcreate -ncd system_map_routed.ncd ..\..\Pims
bitgen -d -w -g ActiveReconfig:yes system_map_routed.ncd
system.bit
############# Fichier Top/Assemble/assemble.bat du design
complet ########
ngdbuild -p xc2vp7-fg456-6 -modular assemble -pimpath ../../Pims
top.ngc
map -pr b top.ngd -o top_map.ncd top.pcf
par -w top_map.ncd top_map_routed.ncd top.pcf
bitgen -w -g startupclk:jtagclk -b top_map_routed.ncd
cptlent_systemppc.bit
pause
############# Fichier Top/Assemble updatelf.bat du
bitstream final ##########
data2mem -bm system -bt cptlent_systemppc.bit -bd
..\..\..\Running_from_BRAM\executable.elf tag bram1 -o b chargement.bit
pause
|