作者Faberge (就好像 可以拧出泪水一样)
看板Electronics
标题[问题]求救! i2c的block spec怎麽写? 老外说的我不懂!!
时间Sat Sep 29 12:14:49 2007
不好意思小弟在这边向各位求救了
实在是抱着不想丢台湾人的脸在这里拼命做事
小弟本来学类比 没想到被数位公司相中 verilog会写了 test_bench会搞了
现再他们叫我想办法弄一个i2c某某碗糕....
所以我昨晚加班回到家後 睡前把菲利浦制定i2c的标准看完
(他们还不相信 今天我说看完了 不信 一问完我他们没话说了...)
然後现在要求我用i2c的输出作一个介面跟记忆体沟通
我说我不懂要做什麽 我知道他输出是8bit 我知道acknowledge 我知道start stop
然後我知道如何判断开始 可是不知道怎麽串起来
他们说就是要我想这个 先去画一个block diagram(另一个跟我说 block spec)给他们看
问题是什麽是block spec?
说起来我还真是替大家丢脸 我一直知道non-sequencial逻辑的玩法
可是不知道这就叫state machine... 今天他们问我我说没听过
他们画到一半 我就直接把他画完 实在只能说自己不记名词能怪谁
现在的问题在我眼前是 我会从i2c slave端接收到一些讯号
start address r/w stop restart acknowledge data
当然我也会回传一些讯号 acknowledge data
我觉得正确的步骤是
等start後 判断address 是的话 判断r/w 回传Master一个acknowledge
如果是w时 送给记忆体一个ready to write讯号 待记忆体clk为high时 解码写入
写完後回传acknowledge 等待下一笔资料 判断是继续? 还是stop? 还是restart?
如果是r时 送给记忆体一个ready to send讯号 待记忆体clk为high时 解码叫出资料
等待Master传送是否acknowledge 是的话继续 否的话等待Master传stop或restart
我是很菜 可是这种东西用state machine我有概念 可能需要几次修改 我可以搞出来
用SCL SDA两条线画关系 我可以画出来 不知道符不符合规格而已(可是我连规格都没有)
但是用block diagram (spec) 我真的没有概念! 每次画完问他们 他们回答都是NO
所以特地请教各位前辈老手 能不能指点一下迷津? 请给我方向就好
我觉得我连方向都没有 这才是让我最无奈的地方.......
不好意思厚颜在这边求教了 先谢过各位了!!!
※ 编辑: Faberge 来自: 69.228.253.145 (09/29 12:18)
1F:→ zerocustom00:看你的描述应该是了解I2C的原理. 10/01 10:27
2F:→ zerocustom00:控制不外乎Address/Data IO. 10/01 10:27
3F:→ zerocustom00:我只有用I2C控制过ADC的Register. 10/01 10:28
4F:→ zerocustom00:不太了解控制记忆体模组要怎应用. 10/01 10:30
5F:→ duffrose:建议你还是继续走类比的路吧,虽然艰难但是学成之後前途 10/02 14:03
6F:→ duffrose:无限光明啊! block diagram 应该是指讯号跑过哪几个区块 10/02 14:04
7F:→ duffrose:然後你要对各个区块写出其功能描述。这应该是block spec. 10/02 14:06