.TH XILINX 10.1 .SH NAME xil, xnfpins, xnffrom, xnfto \- xilinx tools .SH SYNOPSIS .B cda/xil [ .B -x ] .IB name .m .B > .IB new .xnf .br .B cda/xnfpins .I name .I part [ .I pin... ] .B > .IB new .pins .br .B cda/xnffrom .I part .IB old .pins .IB new .xnf .B > .IB new .pins .br .B cda/xnfto .I part .IB name .pins .IB name .xnf .B > .IB name .cst .SH DESCRIPTION .PP .I Xil factors and translates input in .IR minterm (10.6) format to Xilinx Netlist Format suitable for processing by the proprietary Xilinx program .I ppr (partition, place & route) and subsequent programs. .PP Xilinx hard macros and RAM/ROM symbols generated by the Xilinx .I memgen program can be used via the .IR lde (10.1) .B .m facility. .PP .IR Xnfpins , .IR xnfto , and .I xnffrom create and maintain CDA pins and Xilinx constraint files. .I Xnfpins produces an initial .B .pins file given the Xilinx part number (e.g. .BR 4005pg156 ) and a list of statically assigned pin names, typically those used for initializing the part. Subsequent programs retain this initial information in the face of changes in automatically assigned pins. .PP .I Xnffrom takes .B EXT lines in an .B .xnf file produced by .IR lca2xnf (10.1) as back annotation to update the corresponding CDA .B .pins file and subsequently constrain .IR ppr 's choice of pins. .PP .I Xnfto takes .B .tp lines following .B #float in the .B .pins file that appear in the .B .xnf file and fixes them in the .B .cst (constraints) file used by .I ppr. .I Xnfto should be used only to maintain pinouts generated by .I ppr and .I xnffrom and .I only after said pinouts have been set in physical design concrete. .PP The files used and generated by these programs have to be shipped back and forth between Plan 9 and a suitably licensed Xilinx platform. Use .IR mk (1) to control this. .SH FILES .BI /sys/lib/cda/40 nn .pin .SH SEE ALSO .IR lde (10.1) .br .IR ppr (Xilinx) .br .IR memgen (Xilinx) .br .IR lca2xnf (Xilinx) .SH BUGS It may be complicated, but Actel is worse. .br .I Ppr gets very confused if it sees a constraint against using a pin it wasn't going to use anyway.