Guest User

Untitled

a guest
Jul 20th, 2017
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.96 KB | None | 0 0
  1. from litex.gen import *
  2. from litex.soc.interconnect.stream import *
  3. from litejpeg.core.common import *
  4.  
  5. from litejpeg.core.huffman.tablebuilder import build_huffman_rom_tables
  6.  
  7.  
  8. def dc_rom(self,address,data_out_size,data_out_code):
  9.  
  10.     code, size = build_huffman_rom_tables(
  11.     '/home/ishan/gsoc/environment/litejpeg-master/litejpeg/core/huffman/dc_rom.csv')
  12.  
  13.     rom_code_size = len(code)
  14.     rom_code = Memory(16, rom_code_size, init=code)
  15.     rom_code_port = rom_code.get_port(async_read=True)
  16.     self.specials += rom_code, rom_code_port
  17.  
  18.  
  19.     rom_depth = len(size)
  20.     rom_size = Memory(4, rom_depth, init=size)
  21.     rom_size_port = rom_size.get_port(async_read=True)
  22.     self.specials += rom_size, rom_size_port
  23.  
  24.     raddr = Signal(4)
  25.  
  26.     self.sync += raddr.eq(address)
  27.  
  28.     self.comb += [
  29.     rom_code_port.adr.eq(raddr),
  30.     data_out_code.eq(rom_code_port.dat_r),
  31.     rom_size_port.adr.eq(raddr),
  32.     data_out_size.eq(rom_size_port.dat_r)
  33.     ]
Add Comment
Please, Sign In to add comment