[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4688: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4690: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4691: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4692: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
Parallella Community • View topic - Top level module instance

Top level module instance

Using Zynq Programmable Logic and Xilinx tools to create custom board configurations

Top level module instance

Postby rec » Sun May 18, 2014 8:14 pm

rec
 
Posts: 13
Joined: Mon Dec 17, 2012 3:29 am

Re: Top level module instance

Postby hamster » Sun May 18, 2014 9:21 pm

The top level module is chosen by the designer - it defaults to the top of the design tree, or you can right click on a sub-module and select "set as top module". You might need to change the default if you were testing a subcomponent, or had a large design that spanned multiple FPGAs

It is the inputs and outputs of this module that gets connected to the external pins of the FPGA (or to the internal connections to the ARM cores).
hamster
 
Posts: 75
Joined: Mon Dec 17, 2012 3:23 am
Location: New Zealand

Re: Top level module instance

Postby ysapir » Mon May 19, 2014 1:27 am

To be precise, C's main() function is being called from the C Runtime (aka CRT0). The CRT is a wrapper around your program that handles the initialization of the state of the program and environment. After initializing interrupt vector, global and static variables, etc. it calls main(). Upon return from main(), the CRT's exit() procedures takes care of cleanup.

CRT0 itself is called by the SYNC Interrupt, which is fired upon reset. The first function is the start() function, which is the interrupt handler for the SYNC event (IRQ 0).

You can have a look at CRT0 here:

https://github.com/adapteva/epiphany-ne ... any/crt0.S
User avatar
ysapir
 
Posts: 393
Joined: Tue Dec 11, 2012 7:05 pm

Re: Top level module instance

Postby rec » Mon May 19, 2014 6:17 am

rec
 
Posts: 13
Joined: Mon Dec 17, 2012 3:29 am


Return to FPGA Design

Who is online

Users browsing this forum: No registered users and 12 guests

cron