鼓励可重用的网络硬件设计

G. A. Covington, G. Gibb, Jad Naous, J. Lockwood, N. McKeown
{"title":"鼓励可重用的网络硬件设计","authors":"G. A. Covington, G. Gibb, Jad Naous, J. Lockwood, N. McKeown","doi":"10.1109/MSE.2009.5270838","DOIUrl":null,"url":null,"abstract":"The NetFPGA platform is designed to enable students and researchers to build networking systems that run at line-rate, and to create re-usable designs to share with others. Our goal is to eventually create a thriving developer-community, where developers around the world contribute reusable modules and designs for the benefit of the community as a whole. To this end, we have created a repository of “User Contributed Designs” at NetFPGA.org. But creating an “open-source hardware” platform is quite different from software oriented open-source projects. Designing hardware is much more time consuming — and more error prone-than designing software, and so demands a process that is more focussed on verifying that a module really works as advertised, else others will be reluctant to use it. We have designed a novel process for contributing new designs. Each contributed design is specified entirely by a set of tests it passes. A developer includes a list of tests that their design will pass, along with an executable set of tests that the user can check against. Through this process, we hope to establish the right expectations for someone who reuses a design, and to encourage sound design practices with solid, repeatable and integrated testing. In this paper we describe the philosophy behind our process, in the hope that others may learn from it, as well as describe the details of how someone contributes a new design to the NetFPGA repository.","PeriodicalId":241566,"journal":{"name":"2009 IEEE International Conference on Microelectronic Systems Education","volume":"26 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2009-07-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"10","resultStr":"{\"title\":\"Encouraging reusable network hardware design\",\"authors\":\"G. A. Covington, G. Gibb, Jad Naous, J. Lockwood, N. McKeown\",\"doi\":\"10.1109/MSE.2009.5270838\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The NetFPGA platform is designed to enable students and researchers to build networking systems that run at line-rate, and to create re-usable designs to share with others. Our goal is to eventually create a thriving developer-community, where developers around the world contribute reusable modules and designs for the benefit of the community as a whole. To this end, we have created a repository of “User Contributed Designs” at NetFPGA.org. But creating an “open-source hardware” platform is quite different from software oriented open-source projects. Designing hardware is much more time consuming — and more error prone-than designing software, and so demands a process that is more focussed on verifying that a module really works as advertised, else others will be reluctant to use it. We have designed a novel process for contributing new designs. Each contributed design is specified entirely by a set of tests it passes. A developer includes a list of tests that their design will pass, along with an executable set of tests that the user can check against. Through this process, we hope to establish the right expectations for someone who reuses a design, and to encourage sound design practices with solid, repeatable and integrated testing. In this paper we describe the philosophy behind our process, in the hope that others may learn from it, as well as describe the details of how someone contributes a new design to the NetFPGA repository.\",\"PeriodicalId\":241566,\"journal\":{\"name\":\"2009 IEEE International Conference on Microelectronic Systems Education\",\"volume\":\"26 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2009-07-25\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"10\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2009 IEEE International Conference on Microelectronic Systems Education\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/MSE.2009.5270838\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2009 IEEE International Conference on Microelectronic Systems Education","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/MSE.2009.5270838","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 10

摘要

NetFPGA平台旨在使学生和研究人员能够构建以线速率运行的网络系统,并创建可重复使用的设计以与他人共享。我们的目标是最终创建一个繁荣的开发人员社区,世界各地的开发人员为整个社区的利益贡献可重用的模块和设计。为此,我们在NetFPGA.org上创建了一个“用户贡献设计”的存储库。但是创建一个“开源硬件”平台与面向软件的开源项目是完全不同的。设计硬件比设计软件更耗时,也更容易出错,因此需要一个更专注于验证一个模块是否真的像宣传的那样工作的过程,否则其他人将不愿使用它。我们设计了一种新的流程来贡献新的设计。每个贡献的设计完全由它通过的一组测试指定。开发人员包括他们的设计将通过的测试列表,以及用户可以检查的可执行测试集。通过这个过程,我们希望为重用设计的人建立正确的期望,并通过可靠的、可重复的和集成的测试来鼓励合理的设计实践。在本文中,我们描述了我们的过程背后的哲学,希望其他人可以从中学习,并描述了某人如何为NetFPGA存储库贡献新设计的细节。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Encouraging reusable network hardware design
The NetFPGA platform is designed to enable students and researchers to build networking systems that run at line-rate, and to create re-usable designs to share with others. Our goal is to eventually create a thriving developer-community, where developers around the world contribute reusable modules and designs for the benefit of the community as a whole. To this end, we have created a repository of “User Contributed Designs” at NetFPGA.org. But creating an “open-source hardware” platform is quite different from software oriented open-source projects. Designing hardware is much more time consuming — and more error prone-than designing software, and so demands a process that is more focussed on verifying that a module really works as advertised, else others will be reluctant to use it. We have designed a novel process for contributing new designs. Each contributed design is specified entirely by a set of tests it passes. A developer includes a list of tests that their design will pass, along with an executable set of tests that the user can check against. Through this process, we hope to establish the right expectations for someone who reuses a design, and to encourage sound design practices with solid, repeatable and integrated testing. In this paper we describe the philosophy behind our process, in the hope that others may learn from it, as well as describe the details of how someone contributes a new design to the NetFPGA repository.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信