Closed jeffykay closed 9 years ago
D'oh!, I realized the answer to this shortly after submitting the above question. Answer is, i think, the avsdata in the md5control is different from the avsdata in the md5input/md5output. For example, the avs_writedata in md5control.v is either the start or reset signals, where the avs_writedata in md5input.v is 32-bits of data from the stream that is being hashed.
It threw me off that the signals had the same name in both modules, and happen to be the same width because there are 32 chunk_crunchers.
Still lovin' it! -- Jeff
Hello again, still chugging away at your tutorial,
In md5control.v module, I can't figure out why avs_writedata and avs_readdata are associated with start_reg and reset_reg. Doesn't reset just reset the units for a new md5 calc, and start marks the beginning of a new 512 block?
Not even sure why avs_writedata and avs_readdata are in the md5control.v module at all; isn't avs_writedata fully handled by md5input.v and avs_readdata fully handled by md5output.v?
I suppose I'm not understanding something...
Thanks -- Jeff