|
楼主 |
发表于 2014-2-11 10:12:34
|
显示全部楼层
vivienluo 发表于 2014-2-9 11:31
写一个什么程序?
就是这个程序 能教教我吗? vivienluo
This SKILL program is for generating the testpoint coverage report.
Here’s the requirement:
A. Report requirements
Output format: Text based report
Output file name: <PCB file name>_tprpt.txt
The testpoint coverage report contains the following reports:
1. Report A – Testpoint coverage report
a. Report A.1 – Net with testpoint listing
i. The listing of net with testpoint. Both ICT & Functional testpoint shall be covered
ii. With fields:
1. Sequence number
2. Net name
3. Testpoint reference designator
a. For ICT, it shall use the testpoint reference designator
b. For functional, it shall use the functional testpoint reference designator, or component reference designator and pin number, e.g. C3.1
4. X location of testpoint
5. Y location of testpoint
6. Testpoint placement side
7. Testpoint type – ICT or Functional
8. Testpoint object type – Via or pin
iii. The report shall be sorted by the testpoint reference designator
b. Report A.2 - Net without testpoint listing
i. The listing of net without testpoint
ii. With fields:
1. Sequence number
2. Net name
3. Net associated component reference designator
4. Net associated component reference designator pin number
iii. The report shall be sorted by the net name
2. Report B – ICT Testpoint Report
a. The listing of ICT testpoint
i. With fields:
1. Sequence number
2. Net name
3. Testpoint reference designator
4. X location of testpoint
5. Y location of testpoint
6. Testpoint placement side
7. Testpoint object type – Via or pin
3. Report C – Functional Testpoint Report
a. The listing of functional testpoint report
i. Report C.1 – Component pin assigned as functional testpoint
1. With fields:
a. Sequence number
b. Net name
c. Component reference designator
d. Component reference designator pin number
e. X location of testpoint
f. Y location of testpoint
g. Testpoint placement side
h. Is the component pin also a ICT testpoint?
ii. Report C.2 – Via assigned as functional testpoint
a. Sequence number
b. Net name
c. Testpoint reference designator
d. X location of testpoint
e. Y location of testpoint
f. Testpoint placement side
g. Is the via also a ICT testpoint?
Each report shall contain the following report header:
4. The report header should show:
a. PCB file name
b. Report generation date
c. Total component quantity
d. Quantity of component with testpoint (based on the component pin connected net)
e. Quantity of component without testpoint (based on the component pin connected net)
f. Component with testpoint coverage
i. Calculate by the % of Quantity of component with testpoint / Total component quantity
g. Total net quantity
h. Quantity of net with testpoint
i. Quantity of net without testpoint
j. Testpoint coverage percentage
i. Calculate by the % of Quantity of net with testpoint / Total net quantity
B. Background Information
1. ICT testpoint
a. Mostly assigned to vias, but can also be assigned to component pin
b. In Allegro database, the via or pin DBID will contain testPoint attribute. The value return should indicate the testpoint layer – “ETCH/TOP”, or “ETCH/BOTTOM”
viadb->testPoint
pindb->testPoint
c. Testpoint shall have a reference designator and associate with that via or pin DBID. The text shall be on layer “manufacturing/probe_top” or “probe_bottom”
textlist = axlDBGetAttachedText(viadb)
for(j 0 length(textlist)-1
textdb = nth(j textlist)
textlayer = lowerCase(textdb->layer)
if( textlayer == "manufacturing/probe_top" || textlayer == "manufacturing/probe_bottom"
testpointrefdes = textdb->text
); end if
); end for
2. Functional testpoint
a. Assigned to component pin or via
b. In Allegro database, the via or pin DBID shall contain the property “FUNCTIONAL_TP”
viadb->prop->FUNCTIONAL_TP
pindb->prop->FUNCTIONAL_TP |
|