URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Subversion Repositories openrisc_me
[/] [openrisc/] [trunk/] [orpsocv2/] [boards/] [actel/] [ordb1a3pe1500/] [backend/] [par/] [README] - Rev 432
Go to most recent revision | Compare with Previous | Blame | View Log
Actel place and route environmentBackend flow post-synthesis through to programming file can be performed here.The scripts are designed to run the Actel backend tools in batch/shell mode.All make commands should be run in the run/ path.Performing place and route:If the settings in bin/Makefile are what is desired, then a simple$ make allwill perform all steps from synthesis through to layout. The result will be the.adb file located in the run/ path.To alter the configuration (partially seen by running 'make print-config')inspect bin/Makefile to see the various options. To see the script generatedwhich is passed to the Actel Designer, run$ make create-compile-par.tclwhile also setting all variables as desired on the command line, and inspectthe resulting TCL file to ensure it is correct.When running 'make all', the constraint SDC and PDC files will be automaticallygenerated by the script, and will be left in the run/ path.Both PDC and SDC are dependent upon the defines in the RTL Verilog filedesign_defines.v - to see what modules and options are set in design_defines.vrun:$ make print-definesAmong the printed information will be which modules where enabled, and the PDCand SDCs are generated based on this.See the main Makefile, bin/Makefile, and the rule for $(SDC_FILE) to add ormodify timing rules.To print the configuration of the makefile (targeted FPGA part and family, toolsettings, and board I/O bonfiguration) run:$ make print-configPDC files:The physical constraints generation system may seem overly compilcated to beginwith, but is design to make it easy and simple to add additional board andmodule support, switch the design between boards, or modify existingconfigurations.The physical constraints file generation starts with defining some variableswith pin numbers, corresponding to the actual FPGA pins, depending on the FPGAboard. At present, the only CPU board supported is the ORSoC CPU board pin out.The variables assigned pin numbers are in the bin/orsoccpuboard.mkpins file.This file is design to be included by other files, wishing to use the ORSoC CPUboard variables (pin numbers). The variables in the CPU board file are thenused by other files, namely files which define uses for expansion pins on theCPU board. For example, the two headers, JP1 and JP6, and their associatedvariables from the ORSoC CPU board .mkpins file are used in theorsocexpboard.mkpins file. Support for other I/O boards could be added bycreating a new .mkpins file, and creating a list of new, appropriate variablenames corresponding to the pins from the CPU board (in the ORSoC CPU board'scase, the JP1 and JP6 header pin variables.)Finally, the variables for each actual I/O in the design must be assignedsomething. The .mkpinassigns do this. They tie together the CPU and any I/Oboard variable assigns, making it simple and easy to assign the variables usedin the Makefile during PDC generation, to the variables created in the .mkpinsfiles. The three main parts, then, the CPU board .mkpins file, expansion board.mkpins file, overall board .mkpinassigns file and Makefile PDC rule are thecomponents to generating a PDC.Of course, a .mkpinassigns file can also simply contain raw pin numbers foreach I/O port pin, or include a single .mkpins file with just a single boarddefinition. The idea is it's highly modular and configurable before doing thefinal define of each I/O port's signal.Every possible I/O from the design has an entry in the $(PDC_FILE) rule of theActel backend PAR Makefile. Almost all are surrounded by if statements checkingfor the corresponding module's inclusion in the design.Set the overall I/O config .mkpinassigns file by setting BOARD_CONFIG at maketime. The default is orsoccpuexpio.mkpinassigns. All these files should residein the bin/ path.$ make all BOARD_CONFIG=mynew.mkpinassignsTo test the generated PDC file, do$ make pdc_file BOARD_CONFIG=mynew.mkpinassigns
Go to most recent revision | Compare with Previous | Blame | View Log
