URL
https://opencores.org/ocsvn/usbhostslave/usbhostslave/trunk
Subversion Repositories usbhostslave
[/] [usbhostslave/] [trunk/] [RTL/] [slaveController/] [slavecontroller.asf] - Rev 42
Go to most recent revision | Compare with Previous | Blame | View Log
VERSION=1.15
HEADER
FILE="slavecontroller.asf"
FID=403fbdc7
LANGUAGE=VERILOG
ENTITY="slavecontroller"
FRAMES=ON
FREEOID=863
"LIBRARIES=//////////////////////////////////////////////////////////////////////\n//// ////\n//// slaveController\n//// ////\n//// This file is part of the usbhostslave opencores effort.\n//// http://www.opencores.org/cores/usbhostslave/ ////\n//// ////\n//// Module Description: ////\n//// \n//// ////\n//// To Do: ////\n//// \n//// ////\n//// Author(s): ////\n//// - Steve Fielding, sfielding@base2designs.com ////\n//// ////\n//////////////////////////////////////////////////
////////////////////\n//// ////\n//// Copyright (C) 2004 Steve Fielding and OPENCORES.ORG ////\n//// ////\n//// This source file may be used and distributed without ////\n//// restriction provided that this copyright statement is not ////\n//// removed from the file and that any derivative work contains ////\n//// the original copyright notice and the associated disclaimer. ////\n//// ////\n//// This source file is free software; you can redistribute it ////\n//// and/or modify it under the terms of the GNU Lesser General ////\n//// Public License as published by the Free Software Foundation; ////\n//// either version 2.1 of the License, or (at your option) any ////\n//// later version. ////\n////
////\n//// This source is distributed in the hope that it will be ////\n//// useful, but WITHOUT ANY WARRANTY; without even the implied ////\n//// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR ////\n//// PURPOSE. See the GNU Lesser General Public License for more ////\n//// details. ////\n//// ////\n//// You should have received a copy of the GNU Lesser General ////\n//// Public License along with this source; if not, download it ////\n//// from http://www.opencores.org/lgpl.shtml ////\n//// ////\n//////////////////////////////////////////////////////////////////////\n//\n`include \"timescale.v\"\n`include \"usbSerialInterfaceEngine_h.v\"\n`include \"usbSlaveControl_h.v\"\n`include \"usbConstants_h.v\"\n\n"
END
BUNDLES
B T "Declarations" 0,0,255 0 0 1 255,255,255 0 3333 0 0000 1 "Arial" 0
B T "Conditions" 0,0,0 0 0 0 255,255,255 0 3333 0 0110 1 "Arial" 0
B F "States" 0,0,0 0 0 1 0,255,0 1 3527 1480 0000 0 "Arial" 0
B T "Actions" 0,0,0 0 0 1 255,255,255 0 3333 0 0000 1 "Arial" 0
B T "Labels" 0,0,0 0 0 0 255,255,255 0 3333 0 0000 1 "Arial" 0
B L "Transitions" 0,0,0 0 0 1 0,0,0 1 3527 1480 0000 0 "Arial" 0
B F "Ports" 0,0,0 0 0 1 0,255,255 1 3527 1480 0000 0 "Arial" 0
B L "Errors" 255,0,0 0 3 1 255,255,255 1 3527 1480 0000 0 "Arial" 0
B T "State Labels" 0,0,0 0 0 0 255,255,255 0 3333 0 0000 1 "Arial" 4
B F "Current State" 255,255,0 0 0 1 255,255,0 1 3527 1480 0000 0 "Arial" 0
B T "Comments" 157,157,157 0 0 1 255,255,255 0 3333 0 0000 0 "Arial" 0
B L "Info" 0,255,0 0 3 1 255,255,255 1 3527 1480 0000 0 "Arial" 0
B F "Junction" 0,0,0 0 0 1 255,0,0 1 3527 1480 0000 0 "Arial" 0
B F "Initial State Indicator" 0,0,0 0 0 1 240,140,40 1 3527 1480 0000 0 "Arial" 0
END
INSTHEADER 1
PAGE 25400,0 215900,279400
UPPERLEFT 0,0
GRID=OFF
GRIDSIZE 5000,5000 10000,10000
END
INSTHEADER 376
PAGE 25400,0 215900,279400
UPPERLEFT 0,0
GRID=OFF
GRIDSIZE 0,0 10000,10000
END
INSTHEADER 420
PAGE 25400,0 215900,279400
UPPERLEFT 0,0
GRID=OFF
GRIDSIZE 0,0 10000,10000
END
INSTHEADER 551
PAGE 25400,0 215900,279400
UPPERLEFT 0,0
GRID=OFF
GRIDSIZE 0,0 10000,10000
END
INSTHEADER 580
PAGE 25400,0 215900,279400
UPPERLEFT 0,0
GRID=OFF
GRIDSIZE 0,0 10000,10000
END
INSTHEADER 617
PAGE 25400,0 215900,279400
UPPERLEFT 0,0
GRID=OFF
GRIDSIZE 0,0 10000,10000
END
INSTHEADER 698
PAGE 25400,0 215900,279400
UPPERLEFT 0,0
GRID=OFF
GRIDSIZE 0,0 10000,10000
END
INSTHEADER 15
PAGE 25400,0 215900,279400
UPPERLEFT 0,0
GRID=OFF
GRIDSIZE 0,0 10000,10000
END
INSTHEADER 800
PAGE 25400,25400 215900,279400
UPPERLEFT 0,0
GRID=OFF
GRIDSIZE 0,0 10000,10000
END
INSTHEADER 820
PAGE 25400,25400 215900,279400
UPPERLEFT 0,0
GRID=OFF
GRIDSIZE 0,0 10000,10000
END
OBJECTS
G 1 0 0 TEXT 0,0,0 0 0 0 255,255,255 0 3527 1480 0000 0 "Arial" 0 | 102610,273136 1 0 0 "Module: slavecontroller"
F 6 0 671089152 282 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,3000 212900,202584
L 7 6 0 TEXT "Labels" | 30788,196844 1 0 0 "slvCntrl"
L 14 15 0 TEXT "State Labels" | 111713,189976 1 0 0 "START"
S 15 6 77828 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 111713,189976 6500 6500
L 272 271 0 TEXT "Labels" | 186628,209022 1 0 0 "getPacketREn"
I 273 0 130 Builtin InPort | 182869,214288 "" ""
L 274 273 0 TEXT "Labels" | 190399,213982 1 0 0 "getPacketRdy"
L 281 282 0 TEXT "Labels" | 202539,250534 1 0 0 "clk"
I 282 0 3 Builtin InPort | 194091,250840 "" ""
L 283 284 0 TEXT "Labels" | 200131,244906 1 0 0 "rst"
I 284 0 2 Builtin InPort | 194131,244906 "" ""
C 285 97 0 TEXT "Conditions" | 99944,129593 1 0 0 "rst"
W 546 6 8194 531 81 BEZIER "Transitions" | 193355,54360 193121,48042 196557,33707 194740,28964\
192923,24221 173766,19421 163644,19865 153522,20309\
122483,20608 111915,23020 101347,25432 81761,37919\
69710,37919
C 547 546 0 TEXT "Conditions" | 180628,44450 1 0 0 "NAKSent == 1'b1"
A 548 546 16 TEXT "Actions" | 104043,25328 1 0 0 "USBEndPNakTransTypeReg <= tempUSBEndPTransTypeReg;\nendPMuxErrorsWEn <= 1'b1;"
W 550 6 0 81 41 BEZIER "Transitions" | 57945,41731 51978,46294 36355,53695 33342,69899\
30330,86104 25492,143212 35905,156667 46318,170122\
96612,168665 117496,167729
H 559 551 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,3275 212900,251275
S 551 6 40964 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 63527,72146 6500 6500
L 554 551 0 TEXT "State Labels" | 63527,72146 1 0 0 "SETUP_OUT"
L 819 820 0 TEXT "State Labels" | 67420,66064 1 0 0 "RESP"
S 820 589 102404 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 67420,66064 6500 6500
H 821 820 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,28400 212900,276400
W 828 821 2 847 833 BEZIER "Transitions" | 143788,176826 110094,161523 73824,121282 61589,104841
A 829 828 16 TEXT "Actions" | 74668,133998 1 0 0 "getPacketREn <= 1'b1;"
W 830 821 1 847 832 BEZIER "Transitions" | 149052,177611 172803,163396 180803,116530 192775,92880
C 831 830 0 TEXT "Conditions" | 112905,152704 1 0 0 "USBEndPControlRegCopy [`ENDPOINT_ISO_ENABLE_BIT] == 1'b1"
A 291 81 4 TEXT "Actions" | 34763,22801 1 0 0 "transDone <= 1'b0;\nclrEPRdy <= 1'b0;\nendPMuxErrorsWEn <= 1'b0;"
I 298 0 2 Builtin OutPort | 28486,231226 "" ""
L 299 298 0 TEXT "Labels" | 34135,231226 1 0 0 "sendPacketWEn"
I 300 0 130 Builtin InPort | 30658,236044 "" ""
L 301 300 0 TEXT "Labels" | 38188,235738 1 0 0 "sendPacketRdy"
A 302 83 16 TEXT "Actions" | 100377,150834 1 0 0 "PIDByte <= RxByte;"
I 832 821 0 Builtin Exit | 195662,92880
S 833 821 106496 ELLIPSE "States" | 56676,100586 6500 6500
L 834 833 0 TEXT "State Labels" | 56676,100586 1 0 0 "GET_RESP\n/17/"
S 839 821 110592 ELLIPSE "States" | 49830,194919 6500 6500
L 840 839 0 TEXT "State Labels" | 49830,194919 1 0 0 "DATA\n/18/"
A 843 833 4 TEXT "Actions" | 70674,110022 1 0 0 "getPacketREn <= 1'b0;"
W 844 821 0 839 847 BEZIER "Transitions" | 51640,188679 108408,173735 108918,187523 139645,180358
C 845 844 0 TEXT "Conditions" | 79180,187273 1 0 0 "sendPacketRdy == 1'b1"
A 846 839 4 TEXT "Actions" | 65120,205455 1 0 0 "sendPacketWEn <= 1'b0;"
S 847 821 114688 ELLIPSE "States" | 145546,183083 6500 6500
I 862 0 2 Builtin OutPort | 120122,261308 "" ""
L 861 862 0 TEXT "Labels" | 126122,261308 1 0 0 "endPointReadyToGetPkt"
A 860 457 16 TEXT "Actions" | 93778,19821 1 0 0 "USBEndPControlRegCopy <= USBEndPControlReg;\nendPointReadyToGetPkt <= USBEndPControlReg [`ENDPOINT_READY_BIT] ;"
I 859 0 130 Builtin Signal | 35412,208838 "" ""
L 858 859 0 TEXT "Labels" | 38412,208838 1 0 0 "USBEndPControlRegCopy[4:0]"
S 41 6 0 ELLIPSE "States" | 123993,167568 6500 6500
L 40 41 0 TEXT "State Labels" | 123993,167263 1 0 0 "WAIT_RX1\n/0/"
H 589 580 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,28400 212900,249826
S 580 6 45060 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 176572,76868 6500 6500
L 586 580 0 TEXT "State Labels" | 176572,76868 1 0 0 "IN"
I 587 589 0 Builtin Exit | 192962,45432
I 588 589 0 Builtin Entry | 205195,243792
L 848 847 0 TEXT "State Labels" | 145546,183083 1 0 0 "CHK_ISO\n/19/"
I 850 821 0 Builtin Entry | 49920,240120
W 851 821 0 850 839 BEZIER "Transitions" | 49920,237971 49996,228608 49199,210758 49275,201395
W 852 589 1 800 605 BEZIER "Transitions" | 112033,243004 131211,241916 168722,239928 178018,237332\
187314,234737 186141,226528 176133,223346 166125,220164\
127582,215026 108152,212765
C 853 852 0 TEXT "Conditions" | 112257,227462 1 0 0 "USBEndPControlRegCopy[`ENDPOINT_ISO_ENABLE_BIT] == 1'b0"
W 854 821 0 833 832 BEZIER "Transitions" | 63119,99731 96001,98583 159828,94028 192710,92880
C 855 854 0 TEXT "Conditions" | 79768,96292 1 0 0 "getPacketRdy == 1'b1"
W 856 589 0 820 587 BEZIER "Transitions" | 73765,64656 103240,60314 160481,49774 189956,45432
S 596 589 49152 ELLIPSE "States" | 180409,114797 6500 6500
L 597 596 0 TEXT "State Labels" | 181443,115599 1 0 0 "NAK_STALL\n/9/"
C 598 600 0 TEXT "Conditions" | 169310,83968 1 0 0 "sendPacketRdy == 1'b1"
A 599 601 16 TEXT "Actions" | 160934,183503 1 0 0 "sendPacketWEn <= 1'b1;\nsendPacketPID <= `NAK;\nNAKSent <= 1'b1;"
W 600 589 8192 596 587 BEZIER "Transitions" | 180237,108305 188996,66496 180453,87386 196184,45432
W 601 589 8193 605 596 BEZIER "Transitions" | 108219,211536 117760,212835 193154,194500 186733,113295
A 603 596 4 TEXT "Actions" | 173404,104745 1 0 0 "sendPacketWEn <= 1'b0;"
L 604 605 0 TEXT "State Labels" | 101725,211799 1 0 0 "CHK_RDY\n/10/"
S 605 589 53248 ELLIPSE "States" | 101725,211799 6500 6500
W 606 589 0 588 800 BEZIER "Transitions" | 201176,243744 189026,243939 117602,246614 110257,246222
C 607 601 0 TEXT "Conditions" | 120473,202106 1 0 0 "USBEndPControlRegCopy [`ENDPOINT_READY_BIT] == 1'b0"
W 612 589 8194 605 596 BEZIER "Transitions" | 102126,205324 97268,194370 163866,132884 176477,119972
W 613 589 8195 605 617 BEZIER "Transitions" | 96173,208420 81310,204985 61686,186612 53042,177585
C 614 612 0 TEXT "Conditions" | 62794,182643 1 0 0 "USBEndPControlRegCopy [`ENDPOINT_SEND_STALL_BIT] == 1'b1"
A 615 612 16 TEXT "Actions" | 138346,155279 1 0 0 "sendPacketWEn <= 1'b1;\nsendPacketPID <= `STALL;\nstallSent <= 1'b1;"
L 616 617 0 TEXT "State Labels" | 50796,174902 1 0 0 "J2"
S 617 589 57364 ELLIPSE "Junction" | 50796,174902 3500 3500
H 618 617 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,3000 212900,251000
I 619 618 0 Builtin Entry | 96520,152400
I 620 618 0 Builtin Exit | 144780,101600
W 621 618 0 619 620 BEZIER "Transitions" | 100816,152400 114862,136691 127511,117310 141558,101600
L 80 81 0 TEXT "State Labels" | 63570,37922 1 0 0 "FIN_SC\n/1/"
S 81 6 4096 ELLIPSE "States" | 63211,37922 6500 6500
W 82 6 0 15 41 BEZIER "Transitions" | 111847,183487 114548,179878 117251,176267 119952,172658
W 83 6 0 41 376 BEZIER "Transitions" | 122170,161331 124629,151114 122118,150575 124577,140358
W 630 589 8193 617 820 BEZIER "Transitions" | 48004,172793 44616,170945 44594,164562 42823,162021\
41052,159480 41752,153900 40959,141711 40167,129522\
46701,89176 50135,78506 53570,67837 54978,65340\
57981,65109 60984,64878 60458,64813 61074,64659
W 631 589 8194 617 820 BEZIER "Transitions" | 54078,173688 59930,171532 83885,163128 122946,146882\
162008,130636 151291,117855 140238,106874 129185,95894\
77774,78896 71279,71294
C 636 630 0 TEXT "Conditions" | 35003,128975 1 0 0 "USBEndPControlRegCopy [`ENDPOINT_OUTDATA_SEQUENCE_BIT] == 1'b0"
A 637 630 16 TEXT "Actions" | 47297,102245 1 0 0 "sendPacketWEn <= 1'b1;\nsendPacketPID <= `DATA0;"
A 638 631 16 TEXT "Actions" | 117990,107831 1 0 0 "sendPacketWEn <= 1'b1;\nsendPacketPID <= `DATA1;"
I 96 722 0 Builtin Reset | 76296,129336
W 97 722 0 96 723 BEZIER "Transitions" | 76296,129336 85450,126984 105102,130518 114256,128166
C 98 83 0 TEXT "Conditions" | 135898,150246 1 0 0 "RxDataWEn == 1'b1 && \nRxStatus == `RX_PACKET_START && \nRxByte[1:0] == `TOKEN"
L 375 376 0 TEXT "State Labels" | 127082,135048 1 0 0 "GET_TOKEN"
S 376 6 86020 ELLIPSE 0,0,0 0 0 1 0,255,255 1 | 127085,134364 6500 6500
H 377 376 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,3000 212900,251000
I 380 377 0 Builtin Entry | 48940,236580
I 381 377 0 Builtin Exit | 206487,14249
I 649 559 0 Builtin Entry | 37971,243103
I 650 559 0 Builtin Exit | 194044,45058
W 651 559 8193 654 656 BEZIER "Transitions" | 98921,152700 206574,151900 173740,105072 113816,89949
C 652 651 0 TEXT "Conditions" | 116707,136533 1 0 0 "USBEndPControlRegCopy [`ENDPOINT_READY_BIT] == 1'b0"
W 653 559 8192 649 690 BEZIER "Transitions" | 42267,243103 56803,242798 88976,238518 92493,238212
S 654 559 61440 ELLIPSE "States" | 92422,152802 6500 6500
L 655 654 0 TEXT "State Labels" | 92422,152802 1 0 0 "CHK\n/11/"
S 384 377 12288 ELLIPSE "States" | 116864,202628 6500 6500
L 385 384 0 TEXT "State Labels" | 117245,202194 1 0 0 "WAIT_ADDR\n/3/"
W 388 377 8193 384 392 BEZIER "Transitions" | 117619,196179 118049,188396 118224,180484 118654,172701
C 389 388 0 TEXT "Conditions" | 120725,194517 1 0 0 "RxDataWEn == 1'b1 && \nRxStatus == `RX_PACKET_STREAM"
S 392 377 8192 ELLIPSE "States" | 120690,166529 6500 6500
L 393 392 0 TEXT "State Labels" | 120066,166529 1 0 0 "WAIT_CRC\n/2/"
A 394 388 16 TEXT "Actions" | 109989,182895 1 0 0 "addrEndPTemp <= RxByte;"
L 398 399 0 TEXT "Labels" | 56547,17304 1 0 0 "WAIT_RX1"
I 399 377 0 Builtin Link | 54419,17564
S 656 559 65536 ELLIPSE "States" | 109789,85208 5889 6500
A 657 656 4 TEXT "Actions" | 131151,85140 1 0 0 "sendPacketWEn <= 1'b0;"
W 658 559 8192 656 650 BEZIER "Transitions" | 115135,82483 143029,70601 162928,56940 190822,45058
A 659 651 16 TEXT "Actions" | 154655,125925 1 0 0 "sendPacketWEn <= 1'b1;\nsendPacketPID <= `NAK;\nNAKSent <= 1'b1;"
L 661 656 0 TEXT "State Labels" | 110208,84806 1 0 0 "SEND\n/12/"
W 664 559 8194 654 656 BEZIER "Transitions" | 93066,146337 91981,138849 92975,108162 108216,91470
A 665 664 16 TEXT "Actions" | 80842,130315 1 0 0 "sendPacketWEn <= 1'b1;\nsendPacketPID <= `STALL;\nstallSent <= 1'b1;"
C 666 664 0 TEXT "Conditions" | 53275,145515 1 0 0 "USBEndPControlRegCopy [`ENDPOINT_SEND_STALL_BIT] == 1'b1"
C 660 658 0 TEXT "Conditions" | 106335,67684 1 0 0 "sendPacketRdy == 1'b1"
W 400 377 8194 384 399 BEZIER "Transitions" | 110498,201318 102308,200382 54233,209312 50372,191138\
46511,172964 33727,90292 34975,71611 36223,52930\
35724,34993 37785,28932 39847,22872 46307,16188\
54419,15564
C 401 400 0 TEXT "Conditions" | 52882,213899 1 0 0 "RxDataWEn == 1'b1 && \nRxStatus != `RX_PACKET_STREAM"
L 402 403 0 TEXT "State Labels" | 124030,135117 1 0 0 "WAIT_STOP\n/4/"
S 403 377 16384 ELLIPSE "States" | 124030,135117 6500 6500
W 404 377 8193 392 403 BEZIER "Transitions" | 121200,160058 121710,155348 122669,146268 123179,141558
C 405 404 0 TEXT "Conditions" | 124159,160729 1 0 0 "RxDataWEn == 1'b1 && \nRxStatus == `RX_PACKET_STREAM"
W 406 377 8194 392 399 BEZIER "Transitions" | 114191,166474 101160,166788 74889,166988 67471,166085\
60053,165183 57484,160822 55722,148570 53960,136319\
36935,95064 38880,77714 40826,60365 38327,20823\
54419,15564
C 409 406 0 TEXT "Conditions" | 56206,176408 1 0 0 "RxDataWEn == 1'b1 && \nRxStatus != `RX_PACKET_STREAM"
A 410 404 16 TEXT "Actions" | 120222,150346 1 0 0 "endpCRCTemp <= RxByte;"
W 416 377 0 380 384 BEZIER "Transitions" | 53236,236580 66436,236340 92720,236440 100440,234920\
108160,233400 112640,227800 113920,224400 115200,221000\
116013,213096 116333,209096
L 419 420 0 TEXT "State Labels" | 125039,108996 1 0 0 "J1"
S 420 377 20500 ELLIPSE "Junction" | 125039,108996 3500 3500
H 421 420 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,3000 212900,251000
I 422 421 0 Builtin Entry | 96520,152400
I 423 421 0 Builtin Exit | 144780,101600
W 424 421 0 422 423 BEZIER "Transitions" | 100816,152400 114662,136960 127711,117040 141558,101600
W 425 377 0 403 420 BEZIER "Transitions" | 125217,128730 124944,123298 124669,117866 124396,112434
C 426 425 0 TEXT "Conditions" | 126599,128290 1 0 0 "RxDataWEn == 1'b1"
W 427 377 8194 420 399 BEZIER "Transitions" | 121546,109207 108910,108883 84850,107106 77399,105791\
69948,104476 47394,95074 43302,84878 39210,74682\
42917,24960 54419,15564
W 431 377 8193 420 508 BEZIER "Transitions" | 124244,105590 124829,100936 125414,96281 125999,91627
A 688 653 16 TEXT "Actions" | 49697,242131 1 0 0 "getPacketREn <= 1'b1;"
L 689 690 0 TEXT "State Labels" | 98991,238090 1 0 0 "GET_PKT\n/13/"
S 690 559 69632 ELLIPSE "States" | 98991,238090 6500 6500
A 691 690 4 TEXT "Actions" | 108619,243631 1 0 0 "getPacketREn <= 1'b0;"
W 692 559 8194 698 654 BEZIER "Transitions" | 115978,206479 88070,190212 85643,190437 93781,159154
C 693 692 0 TEXT "Conditions" | 66756,183110 1 0 0 "CRCError == 1'b0 &&\nbitStuffError == 1'b0 && \nRxOverflow == 1'b0 && \nRxTimeOut == 1'b0"
W 694 559 8195 654 656 BEZIER "Transitions" | 85930,152497 74648,152804 51806,152609 45513,150767\
39220,148925 36609,140943 36571,133460 36533,125977\
38989,104026 47738,97617 56488,91209 87662,87731\
103933,85889
A 695 694 16 TEXT "Actions" | 32235,126207 1 0 0 "sendPacketWEn <= 1'b1;\nsendPacketPID <= `ACK;"
W 696 559 8195 698 650 BEZIER "Transitions" | 120484,209499 143962,203805 174018,217078 187161,210058\
200304,203038 205920,186346 207441,167119 208962,147892\
209430,87676 208962,71608 208494,55540 206154,51484\
204438,50041 202722,48598 199528,45916 197266,45058
L 697 698 0 TEXT "State Labels" | 117000,209824 1 0 0 "J3"
S 698 559 73748 ELLIPSE "Junction" | 117000,209824 3500 3500
H 699 698 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,3000 212900,251000
I 700 699 0 Builtin Entry | 96520,152400
I 701 699 0 Builtin Exit | 144780,101600
W 702 699 0 700 701 BEZIER "Transitions" | 100816,152400 114718,136923 127655,117078 141558,101600
W 703 559 0 690 698 BEZIER "Transitions" | 102158,232416 105512,227268 111593,217805 114947,212657
C 432 431 0 TEXT "Conditions" | 128096,105689 1 0 0 "RxByte[`CRC_ERROR_BIT] == 1'b0 &&\nRxByte[`BIT_STUFF_ERROR_BIT] == 1'b0 &&\nRxByte [`RX_OVERFLOW_BIT] == 1'b0"
L 443 444 0 TEXT "State Labels" | 127565,109879 1 0 0 "CHK_PID\n/5/"
S 444 6 24576 ELLIPSE "States" | 127565,109879 6500 6500
C 704 703 0 TEXT "Conditions" | 106392,230416 1 0 0 "getPacketRdy == 1'b1"
W 457 377 8193 462 381 BEZIER "Transitions" | 100978,49712 129304,39439 174939,24522 203265,14249
W 461 377 8194 508 786 BEZIER "Transitions" | 125260,78741 125862,71938 126464,65135 127066,58332
S 462 377 94208 ELLIPSE "States" | 94684,51331 6500 6500
L 463 462 0 TEXT "State Labels" | 94684,51331 1 0 0 "CHK_ADDR\n/16/"
H 722 15 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,3000 212900,251000
S 723 722 81920 ELLIPSE "States" | 120650,127000 6500 6500
L 724 723 0 TEXT "State Labels" | 120650,127000 1 0 0 "S1\n/14/"
A 725 723 2 TEXT "Actions" | 132523,206729 1 0 0 "transDone <= 1'b0;\nclearEPRdy <= 1'b0;\ngetPacketREn <= 1'b0;\nsendPacketPID <= 4'b0;\nsendPacketWEn <= 1'b0;\nclrEPRdy <= 1'b0\nUSBEndPTransTypeReg <= 2'b00;\nUSBEndPNakTransTypeReg <= 2'b00;\ntempUSBEndPTransTypeReg <= 2'b00;\nNAKSent <= 1'b0;\nstallSent <= 1'b0;\nendPMuxErrorsWEn <= 1'b0;\naddrEndPTemp <= 8'h00;\nendpCRCTemp <= 8'h00;\nUSBAddress <= 7'b0000000;\nUSBEndP <= 4'h0;\nframeNum <= 11'b00000000000;\nSOFRxed <= 1'b0;\nPIDByte <= 8'h00;\nUSBEndPControlRegCopy <= 5'b00000;\nendPointReadyToGetPkt <= 1'b0;"
I 726 722 0 Builtin Entry | 96520,152400
I 727 722 0 Builtin Exit | 144780,101600
W 728 722 0 726 723 BEZIER "Transitions" | 100816,152400 106104,146248 111125,138081 116414,131928
W 729 722 0 723 727 BEZIER "Transitions" | 125025,122194 130662,116001 135921,107794 141558,101600
L 730 731 0 TEXT "Labels" | 189218,228230 1 0 0 "CRCError"
I 731 0 2 Builtin InPort | 183218,228230 "" ""
L 732 733 0 TEXT "Labels" | 189218,223490 1 0 0 "bitStuffError"
I 733 0 2 Builtin InPort | 183218,223490 "" ""
L 734 735 0 TEXT "Labels" | 189218,218987 1 0 0 "RxTimeOut"
I 735 0 2 Builtin InPort | 183218,218987 "" ""
C 468 457 0 TEXT "Conditions" | 82804,40533 1 0 0 "USBEndP < `NUM_OF_ENDPOINTS &&\nUSBAddress == USBTgtAddress &&\nSCGlobalEn == 1'b1 &&\nUSBEndPControlReg[`ENDPOINT_ENABLE_BIT] == 1'b1"
L 736 737 0 TEXT "Labels" | 189455,232970 1 0 0 "RxOverflow"
I 737 0 2 Builtin InPort | 183455,232970 "" ""
L 742 743 0 TEXT "Labels" | 125778,227003 1 0 0 "USBEndP[3:0]"
I 743 0 130 Builtin OutPort | 119778,227003 "" ""
L 744 745 0 TEXT "Labels" | 35748,252068 1 0 0 "SCGlobalEn"
I 745 0 2 Builtin InPort | 29748,252068 "" ""
L 746 747 0 TEXT "Labels" | 35748,247328 1 0 0 "USBTgtAddress[6:0]"
I 747 0 130 Builtin InPort | 29748,247328 "" ""
L 748 749 0 TEXT "Labels" | 128043,237048 1 0 0 "USBEndPControlReg[4:0]"
I 749 0 130 Builtin InPort | 122043,237048 "" ""
L 750 751 0 TEXT "Labels" | 80282,236074 1 0 0 "NAKSent"
I 751 0 2 Builtin OutPort | 74282,236074 "" ""
I 767 0 2 Builtin InPort | 77236,251752 "" ""
L 766 767 0 TEXT "Labels" | 83236,251752 1 0 0 "RxDataWEn"
I 765 0 130 Builtin Signal | 120578,208940 "" ""
L 764 765 0 TEXT "Labels" | 123578,208940 1 0 0 "tempUSBEndPTransTypeReg[1:0]"
L 752 753 0 TEXT "Labels" | 79882,231167 1 0 0 "stallSent"
I 753 0 2 Builtin OutPort | 73882,231167 "" ""
L 754 755 0 TEXT "Labels" | 125826,241925 1 0 0 "USBEndPTransTypeReg[1:0]"
I 755 0 130 Builtin OutPort | 119826,241925 "" ""
L 756 757 0 TEXT "Labels" | 125853,246737 1 0 0 "USBEndPNakTransTypeReg[1:0]"
I 757 0 130 Builtin OutPort | 119853,246737 "" ""
L 758 759 0 TEXT "Labels" | 125476,231925 1 0 0 "endPMuxErrorsWEn"
I 759 0 2 Builtin OutPort | 119476,231925 "" ""
A 763 41 68 TEXT "Actions" | 141963,177130 1 0 0 "stallSent <= 1'b0;\nNAKSent <= 1'b0;\nSOFRxed <= 1'b0;"
I 783 0 130 Builtin Signal | 83088,208940 "" ""
L 782 783 0 TEXT "Labels" | 86088,208940 1 0 0 "USBAddress[6:0]"
I 781 0 2 Builtin OutPort | 28572,224032 "" ""
L 780 781 0 TEXT "Labels" | 34572,224032 1 0 0 "SOFRxed"
I 779 0 130 Builtin OutPort | 28880,219720 "" ""
L 778 779 0 TEXT "Labels" | 34880,219720 1 0 0 "frameNum[10:0]"
I 777 0 130 Builtin Signal | 120664,221876 "" ""
L 776 777 0 TEXT "Labels" | 123664,221876 1 0 0 "addrEndPTemp[7:0]"
I 775 0 130 Builtin Signal | 120664,217872 "" ""
L 774 775 0 TEXT "Labels" | 123664,217872 1 0 0 "endpCRCTemp[7:0]"
I 773 0 130 Builtin Signal | 120664,213560 "" ""
L 772 773 0 TEXT "Labels" | 123664,213560 1 0 0 "PIDByte[7:0]"
I 771 0 130 Builtin InPort | 76928,242820 "" ""
L 770 771 0 TEXT "Labels" | 82928,242820 1 0 0 "RxByte[7:0]"
I 769 0 130 Builtin InPort | 77236,247440 "" ""
L 768 769 0 TEXT "Labels" | 83236,247440 1 0 0 "RxStatus[7:0]"
A 502 461 16 TEXT "Actions" | 125613,71590 1 0 0 "USBAddress <= addrEndPTemp[6:0];\nUSBEndP <= { endpCRCTemp[2:0], addrEndPTemp[7]} ;"
L 507 508 0 TEXT "State Labels" | 124896,85224 1 0 0 "CHK_SOF\n/6/"
S 508 377 28672 ELLIPSE "States" | 124896,85224 6500 6500
W 509 377 8193 508 399 BEZIER "Transitions" | 118401,84993 100664,84333 64762,83050 55811,78512\
46860,73975 46530,57145 47396,48771 48262,40398\
52522,23896 54419,15564
C 510 509 0 TEXT "Conditions" | 63200,88160 1 0 0 "PIDByte[3:0] == `SOF"
A 511 509 16 TEXT "Actions" | 43897,75831 1 0 0 "frameNum <= {endpCRCTemp[2:0],addrEndPTemp};\nSOFRxed <= 1'b1;"
W 784 6 8195 531 81 BEZIER "Transitions" | 199428,57678 201969,56523 206519,54247 207866,48664\
209214,43082 209522,23062 208983,17094 208444,11127\
205980,7277 191773,6353 177567,5429 123205,5583\
106804,9317 90403,13052 79161,27836 75696,31763\
72231,35690 70888,36159 69579,36621
W 512 377 8194 462 399 BEZIER "Transitions" | 88426,49577 72698,46423 68764,43598 61315,39137\
53866,34676 56339,23332 57169,17564
W 514 6 8193 444 551 BEZIER "Transitions" | 121093,109287 106000,107942 75635,105075 68176,101390\
60717,97705 62441,84600 62616,78575
W 515 6 8194 444 551 BEZIER "Transitions" | 125173,103837 123535,98514 118808,88227 112022,84659\
105236,81091 81842,75191 69908,73378
W 516 6 8195 444 580 BEZIER "Transitions" | 133157,106567 143277,99957 161264,87392 171384,80782
W 517 6 0 376 444 BEZIER "Transitions" | 126740,127881 127032,124839 126993,119409 127285,116367
C 518 514 0 TEXT "Conditions" | 68498,113792 1 0 0 "PIDByte[3:0] == `SETUP"
C 519 515 0 TEXT "Conditions" | 96466,92704 1 0 0 "PIDByte[3:0] == `OUT"
A 521 515 16 TEXT "Actions" | 72876,85256 1 0 0 "tempUSBEndPTransTypeReg <= `SC_OUTDATA_TRANS;"
A 522 514 16 TEXT "Actions" | 34060,103488 1 0 0 "tempUSBEndPTransTypeReg <= `SC_SETUP_TRANS;"
C 523 516 0 TEXT "Conditions" | 138452,109100 1 0 0 "PIDByte[3:0] == `IN"
L 525 526 0 TEXT "State Labels" | 84644,142808 1 0 0 "PID_ERROR\n/7/"
S 526 6 32768 ELLIPSE "States" | 84644,142808 6500 6500
W 527 6 8196 444 526 BEZIER "Transitions" | 122444,113881 113611,119906 98358,132491 89525,138516
A 524 516 16 TEXT "Actions" | 132740,96932 1 0 0 "tempUSBEndPTransTypeReg <= `SC_IN_TRANS;"
L 785 786 0 TEXT "State Labels" | 123152,53144 1 0 0 "DELAY\n/15/"
S 786 377 90112 ELLIPSE "States" | 123152,53144 6500 6500
W 787 377 0 786 462 BEZIER "Transitions" | 116687,52476 112749,52476 105105,51800 101167,51800
K 788 786 0 TEXT "Comments" | 122196,51478 1 0 0 "Insert delay to allow USBEndP etc to update"
W 790 559 1 698 650 BEZIER "Transitions" | 120235,208489 139440,201809 176211,187874 186899,181444\
197587,175015 201929,162657 202973,147251 204017,131846\
203849,82580 202847,68719 201846,54859 198970,48147\
197050,45058
C 791 790 0 TEXT "Conditions" | 102423,188540 1 0 0 "USBEndPControlRegCopy [`ENDPOINT_ISO_ENABLE_BIT] == 1'b1"
L 263 264 0 TEXT "Labels" | 79978,216725 1 0 0 "clrEPRdy"
I 264 0 2 Builtin OutPort | 74329,216725 "" ""
L 265 266 0 TEXT "Labels" | 79978,226532 1 0 0 "transDone"
I 266 0 2 Builtin OutPort | 74329,226532 "" ""
L 269 270 0 TEXT "Labels" | 34450,240616 1 0 0 "sendPacketPID[3:0]"
I 270 0 130 Builtin OutPort | 28450,240616 "" ""
I 271 0 2 Builtin OutPort | 180979,209022 "" ""
W 529 6 0 526 41 BEZIER "Transitions" | 89828,146728 97140,151466 110862,159936 118174,164674
L 530 531 0 TEXT "State Labels" | 193752,60844 1 0 0 "CHK_RDY\n/8/"
S 531 6 36864 ELLIPSE "States" | 193752,60844 6500 6500
W 532 6 8193 531 81 BEZIER "Transitions" | 187378,59573 161170,57818 95812,40849 69604,39094
W 533 6 0 580 531 BEZIER "Transitions" | 181097,72204 183278,69441 186374,67510 188555,64747
W 534 6 0 551 531 BEZIER "Transitions" | 69967,71266 96526,67873 160748,65078 187307,61685
C 535 532 0 TEXT "Conditions" | 69699,59883 1 0 0 "USBEndPControlRegCopy [`ENDPOINT_READY_BIT] == 1'b1"
A 536 532 16 TEXT "Actions" | 87626,51585 1 0 0 "transDone <= 1'b1;\nclrEPRdy <= 1'b1;\nUSBEndPTransTypeReg <= tempUSBEndPTransTypeReg;\nendPMuxErrorsWEn <= 1'b1;"
H 805 800 0 RECT 0,0,0 0 0 1 255,255,255 0 | 28400,3000 212900,251000
S 800 589 98324 ELLIPSE "Junction" | 108538,243174 3500 3500
L 801 800 0 TEXT "State Labels" | 108538,243174 1 0 0 "J4"
W 802 805 0 804 803 BEZIER "Transitions" | 100816,152400 114862,136691 127511,117310 141558,101600
I 803 805 0 Builtin Exit | 144780,101600
I 804 805 0 Builtin Entry | 96520,152400
W 807 589 2 800 617 BEZIER "Transitions" | 106097,240666 80398,219718 50449,190675 50573,178391
W 810 589 3 800 587 BEZIER "Transitions" | 105040,243281 73377,254491 34925,221320 34178,196665\
33432,172010 34721,79558 53522,54375 72324,29193\
153226,30396 173104,33029 192983,35662 193169,40577\
192962,43440
C 812 807 0 TEXT "Conditions" | 65637,235739 1 0 0 "USBEndPControlRegCopy [`ENDPOINT_READY_BIT] == 1'b1"
END
Go to most recent revision | Compare with Previous | Blame | View Log