frameline: update docs and fn name

This commit is contained in:
morgan 2025-02-07 10:31:55 +08:00
parent f6ad1ee97a
commit c91202a21e

View File

@ -918,26 +918,23 @@ class Stream2Pixel4x_Converter(Module):
"""
def __init__(self, res_width, count_width):
#
# 32+8(dchar) 32 4x pixel
# sink ────/────> crc checker ─────> frame header ───/───> eol inserter ─────> 8, 10, 12, 14, 16 bits ───/───> pixel coordinate ─────> 4x pixel with
# reader pixel unpacker tracker coordinate
#
# sink ────/────> crc checker ─────> frame header ───/───> end of line ─────> 8, 10, 12, 14, 16 bits ───/───> pixel coordinate ─────> 4x pixel with
# reader marker pixel unpacker tracker xy coordinate
self.submodules.crc_checker = crc_checker = CXPCRC32_Checker()
self.submodules.header_reader = header_reader = Frame_Header_Reader()
# Pixel Praser
self.submodules.formatter = formatter = End_of_line_Marker()
self.sync += formatter.l_size.eq(header_reader.metadata.l_size)
self.sink = formatter.sink
# Mark the word just before new line data with eop for pixel unpacker
self.submodules.eol_marker = eol_marker = End_of_line_Marker()
self.sync += eol_marker.l_size.eq(header_reader.metadata.l_size)
self.pipeline = [crc_checker, header_reader, formatter]
self.pipeline = [crc_checker, header_reader, eol_marker]
for s, d in zip(self.pipeline, self.pipeline[1:]):
self.comb += s.source.connect(d.sink)
self.sink = self.pipeline[0].sink
# TODO: add docs for each modules
unpackers = {}
for s in [8, 10, 12, 14, 16]:
@ -960,10 +957,10 @@ class Stream2Pixel4x_Converter(Module):
self.pixel4x = tracker.pixel4x
# discard unknown pixel format
mux_cases = {"default": [formatter.source.ack.eq(1)]}
mux_cases = {"default": [eol_marker.source.ack.eq(1)]}
for fmt in pix_fmt:
mux_cases[pix_fmt[fmt]] = [
formatter.source.connect(unpackers[fmt].sink),
eol_marker.source.connect(unpackers[fmt].sink),
unpackers[fmt].source.connect(tracker.sink),
]