阅读:1433回复:4
网卡驱成初步问题
今天开会了,终于知道我到底要干什么了。
导师的意图就是要开发两块相同的通讯板,我做的是驱成。而且要在不到两个月的 时间实现。 硬件是由其他人实现的,用的是FPGA。两块板子是PCI插槽。中间由光纤联系。 其中要实现TCP/IP协议。就是两台机子,一台机子插一块板子。之间用光纤连接。 让人感觉这就是一块网卡,然后还可以设置IP等信息。然后两台机子就可以通讯了。 就像插了两张网卡的机子, 这样的话,譬如我运行\\对方的IP就可以进入别人的机子,或者着一台机子打开一个 FTP,另一台机子开一个FTP的服务。就可以使用了。 反正就是Windows认为是一块网卡。能够实现一张网卡的基本功能。 在硬件的介绍上,就是有人用Verliog的语言开发一个FPGA。我往一个register地址 写数据,然后硬件自动将数据写往一个FIFO,然后这就是硬件自己实现传送功能。 我这两个月学习的是PCI的驱成,我是同时DDK和DS同时学习的。已经入门而且也可以 实现在一张PCI卡上进行编程。本来以为只要懂得从自己写的应用程序里面提取数据 然后传给驱动程序,在往FIFO提供的地址上写数据就可以了。看来全完了。全部从头 再来了。 我想问以下问题,懂得人多少回答一下。让我懂得如何着手。谢谢了。 1.这个是不是NDIS的驱动程序,要学习NDIS的编程,我想用DS下的DriverNetWorks来开发 可以吗?我比较懒不想用DDK。DS还可以阿。 2.NDIS的书籍和资料好少啊,我都没看见,就是可能网上有些人写的心得吧。要不就是 一本windows 2000 驱动程序开发大全。要说DriverNetWorks,我就更没看见了。那本 武安河的书上根本没介绍。walter oney也没有。怎么入手和学习阿? 3.是不是用NDIS把这块板子当作网卡来编程,管他怎么实现的。它就能实现TCP/IP的协议。 我不用再操心上层的什么分组阿还是什么报头还什么分帧,还是什么其实我也说不太清。 4.我写的应该是属于控制硬件的,MINPORT的吧。还有我做的到底是什么网络类型,有没有什么以太网驱动程序,令牌环网驱动程序。我到底要做哪一种??? 5.还有驱程是链路层上的,上面的IP等一些网络层和传输层的细节 我已经不用考虑了吧,还有NDIS应该封装好很多细节,我只是 简单的实现就可以了吧。 这个驱程的开发是不是蛮简单的,小问一下。 我是不是不用管它到底是网线接口还是光纤接口吧。 6.还有我做的应该是NDIS 5的吧。 很感谢 |
|
|
沙发#
发布于:2004-11-29 22:31
因为我也在学习写网卡驱动,我想说几句!
是不是NDIS关键看硬件实现的功能。因为我直接使用RTL8029的芯片,所以一切显得很规范也很有条理。你们自己的硬件我就不清楚了!但是感觉应该还是一个NIC吧! NDIS的资料确实很少,我都郁闷了! 我不知道你有没有看过NDIS的东西,网络是分层的嘛!所以NDIS也是分层的,TCP/IP应该不是NIC实现的。 以上是我的个人理解,因为我很菜,所以不知道对不对。呵呵,我大学还没有毕业! |
|
板凳#
发布于:2004-12-01 12:14
这两天都在看一个叫做楚狂人的NDIS介绍,(在这个板块看到的)
还有Windows 2000驱动程序开发大全的关于NIC的部分。 我想确定几个问题 1.我做的应该是面向无连接的微端口驱成吧。 2.用的方式是Programmed IO方式,在2000下的NDIS5.0。 3.还有是不是我开发了这个驱成,上层软件就不关我的事了,就是说 Windows就把他当作是一块网卡,然后网上邻居就自动添加一个本地连接。就像一块真的网卡一样。然后两台机子就可以相互访问了。 4.还有就是NDIS对硬件有什么要求或规范吗? 下面是关于我所知道的硬件具体信息。 硬件是由其他人实现的(我的两个同学还在开发中),用的是FPGA。两块板子是PCI插槽。中间由光纤联系。 然后导师要求我的驱成要实现TCP/IP协议。就是两台机子,一台机子插一块板子。之间用光纤连接。让人感觉这就是一块网卡,然后还可以设置IP等信息。然后两台机子就可以通讯了。就像插了两张网卡的机子, 在硬件的介绍上,就是有人用Verliog的语言开发一个FPGA。我往一个register地址写数据,然后硬件自动将数据写往一个FIFO,然后这就是硬件自己实现传送功能。 |
|
|
地板#
发布于:2004-12-01 12:44
下面是关于我所知道的硬件具体信息和我要开发的要求。
要求:导师接这个项目的时候,项目要求开发的硬件有一个实现TCP/IP 的驱成。至于怎么证明这块板子支持TCP/IP呢,我导师的想法是就是用 我们开发的板子两块,一台插一个。中间用光纤相联。然后我在这个硬件 上开发一个驱成,安装好以后。Windows 2000就认为这是一块网卡了。 然后嘛这两台机子就可以实现所有网卡的基本功能(譬如可以相互访问拉,等等)。 我导师其实不太懂的,在驱成方面更是不懂。他就是有这个想法,逼着我去实现。 ...... ...... 硬件:我的其他同学正在开发中,用的是FPGA。 这块板子是PCI插槽。接口由光纤联系。在硬件的介绍上,就是有人 用Verliog的语言开发一个FPGA。发送数据时我往一个register地址写数据, 然后硬件自动将数据写往一个FIFO(其中某个同学实现的),然后 后面的物理传输就是硬件自己实现了。接受时,硬件产生一个中断。我就去接受。 (好像就是这样) |
|
|
地下室#
发布于:2004-12-08 21:19
aben1233,你好:
我现在做的题目和你做的几乎一摸一样。 是用FPGA 实现TCP/IP协议。 就是作块板子,嵌入FPGA,让计算机把它当作网卡用。 我向您请教一个问题,网卡通讯是基于网卡的物理地址,这个地址 由网卡制造商提供,但是我们自己做的板子,这个地址改如何设置呢? 很想和您交个朋友,大家共同学习,共同进步。 QQ:362872023 |
|