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 
 |