IC设计后端流程(初学必看) - 百度文库

ʱ : IC设计后端流程(初学必看) - 百度文库ϿʼĶ

ѡ Edit=>Search , Add Criteria ,ãѡaplly ѡ Replace All

߲˳

ڰ˲ abstractmux⡣Ȼmuxģcore뵽blockУmuxȻcell=>move=>block=>OK

ھŲGDSͼlabelȻQ鿴Properityʲô㣬Ȼ󿴿

netProperityʲô㣬Լʲôpurposepin庬Ҫabstract UG

<1>

Map text labels to pins

㣺METAL3Purpose

Map text labels to pins дʽοabstract UG

<2>

<3>

<4> Export lef

<5>鿴abstract.lefûVDDVSS

֮ǵõһģlefļǾģһεá

9macroΪһģһtopнеá

һǻǻصۺϣһtoptopµ߼ܣ֮ǰmuxģ飬PADģ顣ƵĴſͼ£

PDIDGZΪIO PDO04CDGΪIO PVDD1DGZ ΪPADߵ PVSS1DGZ ΪPADĵص MultipleΪ֮ǰĺģ MuxΪ¼߼

ڶĸд

±дverilog루PADPADۺиôԲ˿ڵΪPADѾܴˣۺϳĽӽʵʡ µverilog£

module mux_1 (clk,clr,a,b,y);//µ߼עmux_1֮ǰûϵֻΪֵùϵӵһѣ input clk,clr; input [7:0] a,b; output [15:0] y; reg [15:0] y;

always @(posedge clk) begin

if(!clr)

begin

y<=0; end else begin

y<=a*b; end end

endmodule module

PAD(clk_pcb,clk_core,clr_pcb,clr_core,data1_pcb,data1_core,data2_pcb,data2_core,dataout_core,dataout_pcb);PADģ飬עǰĿͼμӵģ input clk_pcb,clr_pcb; output clk_core ,clr_core;

input [7:0] data1_pcb,data2_pcb; output [7:0] data1_core,data2_core; input [15:0] dataout_core; output [15:0] dataout_pcb;

PDIDGZ PAD_CLK (.PAD(clk_pcb),.C(clk_core)); PDIDGZ PAD_CLR (.PAD(clr_pcb),.C(clr_core));

PDIDGZ PAD_DATA1_0 (.PAD(data1_pcb[0]),.C(data1_core[0])); PDIDGZ PAD_DATA1_1 (.PAD(data1_pcb[1]),.C(data1_core[1])); PDIDGZ PAD_DATA1_2 (.PAD(data1_pcb[2]),.C(data1_core[2])); PDIDGZ PAD_DATA1_3 (.PAD(data1_pcb[3]),.C(data1_core[3])); PDIDGZ PAD_DATA1_4 (.PAD(data1_pcb[4]),.C(data1_core[4])); PDIDGZ PAD_DATA1_5 (.PAD(data1_pcb[5]),.C(data1_core[5])); PDIDGZ PAD_DATA1_6 (.PAD(data1_pcb[6]),.C(data1_core[6])); PDIDGZ PAD_DATA1_7 (.PAD(data1_pcb[7]),.C(data1_core[7])); PDIDGZ PAD_DATA2_0 (.PAD(data2_pcb[0]),.C(data2_core[0])); PDIDGZ PAD_DATA2_1 (.PAD(data2_pcb[1]),.C(data2_core[1])); PDIDGZ PAD_DATA2_2 (.PAD(data2_pcb[2]),.C(data2_core[2])); PDIDGZ PAD_DATA2_3 (.PAD(data2_pcb[3]),.C(data2_core[3])); PDIDGZ PAD_DATA2_4 (.PAD(data2_pcb[4]),.C(data2_core[4])); PDIDGZ PAD_DATA2_5 (.PAD(data2_pcb[5]),.C(data2_core[5])); PDIDGZ PAD_DATA2_6 (.PAD(data2_pcb[6]),.C(data2_core[6])); PDIDGZ PAD_DATA2_7 (.PAD(data2_pcb[7]),.C(data2_core[7]));

PDO04CDG PAD_DATAOUT_0 (.I(dataout_core[0]),.PAD(dataout_pcb[0])); PDO04CDG PAD_DATAOUT_1 (.I(dataout_core[1]),.PAD(dataout_pcb[1])); PDO04CDG PAD_DATAOUT_2 (.I(dataout_core[2]),.PAD(dataout_pcb[2])); PDO04CDG PAD_DATAOUT_3 (.I(dataout_core[3]),.PAD(dataout_pcb[3])); PDO04CDG PAD_DATAOUT_4 (.I(dataout_core[4]),.PAD(dataout_pcb[4])); PDO04CDG PAD_DATAOUT_5 (.I(dataout_core[5]),.PAD(dataout_pcb[5])); PDO04CDG PAD_DATAOUT_6 (.I(dataout_core[6]),.PAD(dataout_pcb[6]));

ϵͬͷxxxxx#qq.com(#滻Ϊ@)