123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226 |
- //-----------------------------------------------------------------
- // USB Serial Port
- // V0.1
- // Ultra-Embedded.com
- // Copyright 2020
- //
- // Email: admin@ultra-embedded.com
- //
- // License: LGPL
- //-----------------------------------------------------------------
- //
- // This source file may be used and distributed without
- // restriction provided that this copyright statement is not
- // removed from the file and that any derivative work contains
- // the original copyright notice and the associated disclaimer.
- //
- // This source file is free software; you can redistribute it
- // and/or modify it under the terms of the GNU Lesser General
- // Public License as published by the Free Software Foundation;
- // either version 2.1 of the License, or (at your option) any
- // later version.
- //
- // This source is distributed in the hope that it will be
- // useful, but WITHOUT ANY WARRANTY; without even the implied
- // warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- // PURPOSE. See the GNU Lesser General Public License for more
- // details.
- //
- // You should have received a copy of the GNU Lesser General
- // Public License along with this source; if not, write to the
- // Free Software Foundation, Inc., 59 Temple Place, Suite 330,
- // Boston, MA 02111-1307 USA
- //-----------------------------------------------------------------
- //-----------------------------------------------------------------
- // Generated File
- //-----------------------------------------------------------------
- module usb_desc_rom
- (
- input hs_i,
- input [7:0] addr_i,
- output [7:0] data_o
- );
- reg [7:0] desc_rom_r;
- always @ *
- begin
- case (addr_i)
- 8'd0: desc_rom_r = 8'h12;
- 8'd1: desc_rom_r = 8'h01;
- 8'd2: desc_rom_r = 8'h00;
- 8'd3: desc_rom_r = 8'h02;
- 8'd4: desc_rom_r = 8'h02;
- 8'd5: desc_rom_r = 8'h00;
- 8'd6: desc_rom_r = 8'h00;
- 8'd7: desc_rom_r = hs_i ? 8'h40 : 8'h08;
- 8'd8: desc_rom_r = 8'h50; // VID_L
- 8'd9: desc_rom_r = 8'h1d; // VID_H
- 8'd10: desc_rom_r = 8'h49; // PID_L
- 8'd11: desc_rom_r = 8'h61; // PID_H
- 8'd12: desc_rom_r = 8'h01;
- 8'd13: desc_rom_r = 8'h01;
- 8'd14: desc_rom_r = 8'h00;
- 8'd15: desc_rom_r = 8'h00;
- 8'd16: desc_rom_r = 8'h00;
- 8'd17: desc_rom_r = 8'h01;
- 8'd18: desc_rom_r = 8'h09;
- 8'd19: desc_rom_r = 8'h02;
- 8'd20: desc_rom_r = 8'h43;
- 8'd21: desc_rom_r = 8'h00;
- 8'd22: desc_rom_r = 8'h02;
- 8'd23: desc_rom_r = 8'h01;
- 8'd24: desc_rom_r = 8'h00;
- 8'd25: desc_rom_r = 8'h80;
- 8'd26: desc_rom_r = 8'h32;
- 8'd27: desc_rom_r = 8'h09;
- 8'd28: desc_rom_r = 8'h04;
- 8'd29: desc_rom_r = 8'h00;
- 8'd30: desc_rom_r = 8'h00;
- 8'd31: desc_rom_r = 8'h01;
- 8'd32: desc_rom_r = 8'h02;
- 8'd33: desc_rom_r = 8'h02;
- 8'd34: desc_rom_r = 8'h01;
- 8'd35: desc_rom_r = 8'h00;
- 8'd36: desc_rom_r = 8'h05;
- 8'd37: desc_rom_r = 8'h24;
- 8'd38: desc_rom_r = 8'h00;
- 8'd39: desc_rom_r = 8'h10;
- 8'd40: desc_rom_r = 8'h01;
- 8'd41: desc_rom_r = 8'h05;
- 8'd42: desc_rom_r = 8'h24;
- 8'd43: desc_rom_r = 8'h01;
- 8'd44: desc_rom_r = 8'h03;
- 8'd45: desc_rom_r = 8'h01;
- 8'd46: desc_rom_r = 8'h04;
- 8'd47: desc_rom_r = 8'h24;
- 8'd48: desc_rom_r = 8'h02;
- 8'd49: desc_rom_r = 8'h06;
- 8'd50: desc_rom_r = 8'h05;
- 8'd51: desc_rom_r = 8'h24;
- 8'd52: desc_rom_r = 8'h06;
- 8'd53: desc_rom_r = 8'h00;
- 8'd54: desc_rom_r = 8'h01;
- 8'd55: desc_rom_r = 8'h07;
- 8'd56: desc_rom_r = 8'h05;
- 8'd57: desc_rom_r = 8'h83;
- 8'd58: desc_rom_r = 8'h03;
- 8'd59: desc_rom_r = 8'h40;
- 8'd60: desc_rom_r = 8'h00;
- 8'd61: desc_rom_r = 8'h02;
- 8'd62: desc_rom_r = 8'h09;
- 8'd63: desc_rom_r = 8'h04;
- 8'd64: desc_rom_r = 8'h01;
- 8'd65: desc_rom_r = 8'h00;
- 8'd66: desc_rom_r = 8'h02;
- 8'd67: desc_rom_r = 8'h0a;
- 8'd68: desc_rom_r = 8'h00;
- 8'd69: desc_rom_r = 8'h00;
- 8'd70: desc_rom_r = 8'h00;
- 8'd71: desc_rom_r = 8'h07;
- 8'd72: desc_rom_r = 8'h05;
- 8'd73: desc_rom_r = 8'h01;
- 8'd74: desc_rom_r = 8'h02;
- 8'd75: desc_rom_r = hs_i ? 8'h00 : 8'h40;
- 8'd76: desc_rom_r = hs_i ? 8'h02 : 8'h00;
- 8'd77: desc_rom_r = 8'h00;
- 8'd78: desc_rom_r = 8'h07;
- 8'd79: desc_rom_r = 8'h05;
- 8'd80: desc_rom_r = 8'h82;
- 8'd81: desc_rom_r = 8'h02;
- 8'd82: desc_rom_r = hs_i ? 8'h00 : 8'h40;
- 8'd83: desc_rom_r = hs_i ? 8'h02 : 8'h00;
- 8'd84: desc_rom_r = 8'h00;
- 8'd85: desc_rom_r = 8'h04;
- 8'd86: desc_rom_r = 8'h03;
- 8'd87: desc_rom_r = 8'h09;
- 8'd88: desc_rom_r = 8'h04;
- 8'd89: desc_rom_r = 8'h1e;
- 8'd90: desc_rom_r = 8'h03;
- 8'd91: desc_rom_r = 8'h55;
- 8'd92: desc_rom_r = 8'h00;
- 8'd93: desc_rom_r = 8'h4c;
- 8'd94: desc_rom_r = 8'h00;
- 8'd95: desc_rom_r = 8'h54;
- 8'd96: desc_rom_r = 8'h00;
- 8'd97: desc_rom_r = 8'h52;
- 8'd98: desc_rom_r = 8'h00;
- 8'd99: desc_rom_r = 8'h41;
- 8'd100: desc_rom_r = 8'h00;
- 8'd101: desc_rom_r = 8'h2d;
- 8'd102: desc_rom_r = 8'h00;
- 8'd103: desc_rom_r = 8'h45;
- 8'd104: desc_rom_r = 8'h00;
- 8'd105: desc_rom_r = 8'h4d;
- 8'd106: desc_rom_r = 8'h00;
- 8'd107: desc_rom_r = 8'h42;
- 8'd108: desc_rom_r = 8'h00;
- 8'd109: desc_rom_r = 8'h45;
- 8'd110: desc_rom_r = 8'h00;
- 8'd111: desc_rom_r = 8'h44;
- 8'd112: desc_rom_r = 8'h00;
- 8'd113: desc_rom_r = 8'h44;
- 8'd114: desc_rom_r = 8'h00;
- 8'd115: desc_rom_r = 8'h45;
- 8'd116: desc_rom_r = 8'h00;
- 8'd117: desc_rom_r = 8'h44;
- 8'd118: desc_rom_r = 8'h00;
- 8'd119: desc_rom_r = 8'h1e;
- 8'd120: desc_rom_r = 8'h03;
- 8'd121: desc_rom_r = 8'h55;
- 8'd122: desc_rom_r = 8'h00;
- 8'd123: desc_rom_r = 8'h53;
- 8'd124: desc_rom_r = 8'h00;
- 8'd125: desc_rom_r = 8'h42;
- 8'd126: desc_rom_r = 8'h00;
- 8'd127: desc_rom_r = 8'h20;
- 8'd128: desc_rom_r = 8'h00;
- 8'd129: desc_rom_r = 8'h44;
- 8'd130: desc_rom_r = 8'h00;
- 8'd131: desc_rom_r = 8'h45;
- 8'd132: desc_rom_r = 8'h00;
- 8'd133: desc_rom_r = 8'h4d;
- 8'd134: desc_rom_r = 8'h00;
- 8'd135: desc_rom_r = 8'h4f;
- 8'd136: desc_rom_r = 8'h00;
- 8'd137: desc_rom_r = 8'h20;
- 8'd138: desc_rom_r = 8'h00;
- 8'd139: desc_rom_r = 8'h20;
- 8'd140: desc_rom_r = 8'h00;
- 8'd141: desc_rom_r = 8'h20;
- 8'd142: desc_rom_r = 8'h00;
- 8'd143: desc_rom_r = 8'h20;
- 8'd144: desc_rom_r = 8'h00;
- 8'd145: desc_rom_r = 8'h20;
- 8'd146: desc_rom_r = 8'h00;
- 8'd147: desc_rom_r = 8'h20;
- 8'd148: desc_rom_r = 8'h00;
- 8'd149: desc_rom_r = 8'h0e;
- 8'd150: desc_rom_r = 8'h03;
- 8'd151: desc_rom_r = 8'h30;
- 8'd152: desc_rom_r = 8'h00;
- 8'd153: desc_rom_r = 8'h30;
- 8'd154: desc_rom_r = 8'h00;
- 8'd155: desc_rom_r = 8'h30;
- 8'd156: desc_rom_r = 8'h00;
- 8'd157: desc_rom_r = 8'h30;
- 8'd158: desc_rom_r = 8'h00;
- 8'd159: desc_rom_r = 8'h30;
- 8'd160: desc_rom_r = 8'h00;
- 8'd161: desc_rom_r = 8'h30;
- 8'd162: desc_rom_r = 8'h00;
- 8'd163: desc_rom_r = 8'h00;
- 8'd164: desc_rom_r = 8'hc2;
- 8'd165: desc_rom_r = 8'h01;
- 8'd166: desc_rom_r = 8'h00;
- 8'd167: desc_rom_r = 8'h00;
- 8'd168: desc_rom_r = 8'h00;
- 8'd169: desc_rom_r = 8'h08;
- default: desc_rom_r = 8'h00;
- endcase
- end
- assign data_o = desc_rom_r;
- endmodule
|