| /* | |
| Test libarchfpga, try reading an architecture and print the results to a file | |
| Date: February 19, 2009 | |
| Author: Jason Luu | |
| */ | |
| #include <stdio.h> | |
| #include <stdlib.h> | |
| #include "read_xml_arch_file.h" | |
| void print_help(); | |
| int main(int argc, char **argv) { | |
| struct s_arch arch; | |
| t_type_descriptor *types; | |
| int numTypes; | |
| ; | |
| if (argc - 1 != 3) { | |
| printf( | |
| "Error: Unexpected # of arguments. Expected 3 found %d arguments\n", | |
| argc); | |
| print_help(); | |
| } | |
| printf( | |
| "------------------------------------------------------------------------------\n"); | |
| printf( | |
| "- Read architecture file and print library data structures into an output file\n"); | |
| printf( | |
| "------------------------------------------------------------------------------\n\n"); | |
| printf("Inputs: \n" | |
| "architecture %s \n" | |
| "timing_driven %d \n" | |
| "output file %s\n", argv[1], atoi(argv[2]), argv[3]); | |
| printf("Reading in architecture\n"); | |
| /* function declarations */ | |
| XmlReadArch(argv[1], (boolean) atoi(argv[2]), &arch, &types, &numTypes); | |
| printf("Printing Results\n"); | |
| EchoArch(argv[3], types, numTypes, &arch); | |
| printf("Done\n"); | |
| return 0; | |
| } | |
| void print_help() { | |
| printf( | |
| "\n---------------------------------------------------------------------------------------\n"); | |
| printf( | |
| "read_arch: Read a VPR architecture file and output internal data structures"); | |
| printf( | |
| "Usage: read_arch <arch_file.xml> <timing_driven (0|1)> <output_file>\n"); | |
| printf(" ex: read_arch k4_n10.xml 1 arch_data.out\n"); | |
| printf( | |
| " Read timing-driven architecture k4_n10.xml and output the results to arch_data.out\n"); | |
| printf( | |
| "\n---------------------------------------------------------------------------------------\n"); | |
| } | |