<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-967271957585995849</id><updated>2012-01-25T04:17:15.890-08:00</updated><category term='VHDL'/><category term='trust'/><category term='DSP'/><category term='development'/><category term='Amazon'/><category term='competition'/><category term='solutions'/><category term='open-source FPGA hardware'/><category term='starting FPGA design'/><category term='Onsen'/><category term='Customers'/><category term='registering a company'/><category term='FPGA custom blocks'/><category term='SaaS'/><category term='issues'/><category term='EDA'/><category term='reference design'/><category term='open'/><category term='Business planning'/><category term='CPLD'/><category term='public cloud'/><category term='FPGA'/><category term='newbie'/><category term='PLD matchmaking'/><category term='startups'/><category term='Coding'/><category term='product planning'/><category term='simulation'/><category term='A new beginning'/><category term='embedded'/><category term='market leader'/><category term='vision'/><category term='pitching'/><category term='security'/><category term='plunify'/><category term='sigasi'/><category term='cloud'/><category term='venture capital'/><category term='mission'/><category term='AWS'/><category term='raison d&apos;etre'/><category term='startup FPGA cloud plunify'/><category term='simplify programmable logic design'/><category term='Seed funding'/><category term='simulatoin'/><category term='private cloud'/><category term='Incorporation'/><category term='search'/><category term='beginner'/><category term='new to FPGA'/><title type='text'>Chip design in the Cloud</title><subtitle type='html'>Exploring ways to simplify and accelerate chip design tasks,
&lt;br&gt;starting with FPGA simulation, synthesis and place-and-route,
&lt;br&gt;using a type of highly scalable computing infrastructure &lt;br&gt;that's more popularly known as Cloud Computing.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>37</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-4039070734645786476</id><published>2012-01-20T00:22:00.001-08:00</published><updated>2012-01-20T00:23:13.877-08:00</updated><title type='text'>Biggest Challenges in FPGA Design</title><content type='html'>&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;A poll on the challenges associated with FPGA design in an FPGA discussion group on LinkedIn caught my attention recently. Conducted by Cuong Nguyen from EDA Direct, it drew several lengthy comments.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-bottom: 0.5em; margin-left: auto; margin-right: auto; padding-bottom: 6px; padding-left: 6px; padding-right: 6px; padding-top: 6px; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;a href="http://4.bp.blogspot.com/-tNwTGqnQ004/TxkQLYRgFhI/AAAAAAAAAL0/1ZTBIYdZx_0/s1600/Screen+Shot+2012-01-20+at+2.54.10+PM.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="43" src="http://4.bp.blogspot.com/-tNwTGqnQ004/TxkQLYRgFhI/AAAAAAAAAL0/1ZTBIYdZx_0/s320/Screen+Shot+2012-01-20+at+2.54.10+PM.png" style="cursor: move;" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;a href="http://1.bp.blogspot.com/-xPPizWZWGwE/TxkQK5FpIrI/AAAAAAAAALw/N9FVG_XZQnk/s1600/Screen+Shot+2012-01-20+at+2.52.28+PM.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="195" src="http://1.bp.blogspot.com/-xPPizWZWGwE/TxkQK5FpIrI/AAAAAAAAALw/N9FVG_XZQnk/s320/Screen+Shot+2012-01-20+at+2.52.28+PM.png" style="cursor: move;" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="font-size: 13px; padding-top: 4px; text-align: center;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Poll: FPGA Design Challenges&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;My vote went to Timing Closure - definitely one of the most frustrating and time-consuming classes of problems for me. Unlike functional bugs, timing problems can be rather unpredictable because there are more dependencies on the rest of the system, and also because different synthesis and place-and-route tools have their own unique options that can improve / worsen timing scores unexpectedly. This seems especially true when a design exceeds ~75% utilization and above. Which reminds me of a restriction placed on the FPGA team at a user's company where, at the code development phase, no design was allowed to exceed 70% total utilization.&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;The closer it gets to the deadline, the more urgent it is for the designer to find a timing solution without changing too much of the design. Upstream changes are rarely welcomed so if a tool option can result in positive slack, that would be very much preferred.&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;One rather brute-force approach that I've used before was to run a design against almost every conceivable tool option and just select the best results. Of course, that's assuming one has sufficient licenses, enough servers and suitable scripting experience, otherwise it is going to be very time- and resource-consuming. Over time, we've figured out a more optimized set of options that perform well for different designs, and are now pairing those with cloud computing resources to get a good blend of options vs tools+hardware. This approach has been working very well so far and we're improving it as we get more designs.&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;What's the most challenging thing that you've faced in FPGA design?&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;- harnhua&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-4039070734645786476?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/4039070734645786476/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2012/01/biggest-challenges-in-fpga-design.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4039070734645786476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4039070734645786476'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2012/01/biggest-challenges-in-fpga-design.html' title='Biggest Challenges in FPGA Design'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-tNwTGqnQ004/TxkQLYRgFhI/AAAAAAAAAL0/1ZTBIYdZx_0/s72-c/Screen+Shot+2012-01-20+at+2.54.10+PM.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-4255172346931076478</id><published>2011-12-15T04:49:00.000-08:00</published><updated>2011-12-16T09:15:13.387-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='private cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='FPGA'/><category scheme='http://www.blogger.com/atom/ns#' term='public cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='AWS'/><title type='text'>Private or Public clouds? Or why not both?</title><content type='html'>(This post was sparked by an interesting email conversation with a user. I promised that I will post my views in a new blog article, so here it is)&lt;br /&gt;&lt;br /&gt;Why doesn't Plunify yet provide a hybrid solution, a solution that works seamlessly on private and public clouds? For those who are finding out about us for the first time, Plunify helps FPGA designers use the cloud to achieve their design objectives in a much shorter time, such as achieving timing closure, exploring different constraints in parallel or simply regression testing. To do this, Plunify uses Amazon Web Services (public cloud) &amp;nbsp;and we are an AWS solutions provider. &amp;nbsp;&lt;a href="http://www.plunify.com/en/solutions.php"&gt;&lt;span style="color: #0b5394;"&gt;Click here to if you're interested in &amp;nbsp;how we do it&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Why public clouds for us&lt;/b&gt;&lt;br /&gt;There are many definitions of cloud computing out there. The term, "cloud computing," itself is rather over-hyped and&amp;nbsp;everyone wants a piece of it in his/her value proposition.&amp;nbsp;The one definition that really bugs me is that cloud computing is just a massive shared drive. Although that is not totally wrong, it sounds like we've gone back to the days of mainframes and thin clients, and, in my opinion, misses the most important point of any application built with cloud computing technologies - scalability.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Scalability&amp;nbsp;&lt;/b&gt;means that you can instantly start 1 server or 100 servers at the click of button or a script. It also means that you can store 5Mb or 50GB on the fly.&lt;br /&gt;&lt;br /&gt;This brings me to the first difference between a private cloud and public cloud. With a private cloud, you are limited to the number of servers you own. And unless you are Intel or Cisco or the government of a country, you will have a scaling limitation. So for most of us, converting that to a private cloud, means&amp;nbsp;that we are splitting&amp;nbsp;up a limited pool of resources using virtualization, into even smaller pools of resources. That doesn't make sense to me at all because compiling a FPGA design is often a compute-intensive process. Part of the idea of cloud computing is to increase your available resources as well, not just keeping them at the same level.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Costs + Hidden Costs + Maintenance&lt;/b&gt;&lt;br /&gt;You might say, "Hold on,&amp;nbsp;why can't I just buy more servers for my private cloud?"&lt;br /&gt;Sure, if you are Intel, Cisco or someone who can afford to buy in bulk and get a juicy discount.&lt;br /&gt;On top of that, you have to take into account that &lt;a href="http://perspectives.mvdirona.com/2010/09/18/OverallDataCenterCosts.aspx" target="_blank"&gt;&lt;span style="color: #0b5394;"&gt;43% of the costs&lt;/span&gt;&lt;/a&gt; are hidden - those rear their ugly heads in configuration, maintenance, power, cooling, climate-control, backup and many other overheads.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Estimating your needs&lt;/b&gt;&lt;br /&gt;If you still want to buy, how many more servers will you buy? &lt;a href="http://aws.amazon.com/economics/" target="_blank"&gt;&lt;span style="color: #0b5394;"&gt;Meeting your computing demand is not an exact science&lt;/span&gt;&lt;/a&gt;. Unless we measure every minute of our usage, we can only make an estimate. If you over-estimate, you will be wasting idling compute resources. If you underestimate, it will delay your development process at critical phases. It is practically impossible to be perfect.&lt;br /&gt;&lt;br /&gt;Cloud computing solves this problem with scalability but it can be a&amp;nbsp;double-edged sword. If you normally underestimate your demands, you may pay more overall because in reality, you actually need the additional resources on a regular basis. &amp;nbsp;But if you are blessed with a fat budget and can afford to overestimate your demand, you may find yourself paying less. No matter which side you are on, the important thing is that cloud computing is a fairer allocation and better use of your company's&amp;nbsp;resources.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Why not a hybrid?&lt;/b&gt;&lt;br /&gt;For the short term, it might seem attractive and prudent to convert your local pool of servers into a private cloud. You've already bought your servers, right? Why not utilize them to the max?&amp;nbsp;Yes, you should, if you have a huge, established datacenter, equipped with Mission Impossible-style physical security and network equipment.&lt;br /&gt;&lt;br /&gt;If you don't, here is why you should reconsider trying to implement a private or hybrid cloud.&lt;br /&gt;It is hard to replicate fully what has already been done in the public cloud, in a private setting.&amp;nbsp;There is &amp;nbsp;software like&amp;nbsp;&lt;a href="http://www.eucalyptus.com/" target="_blank"&gt;&lt;span style="color: #0b5394;"&gt;Eucalyptus&lt;/span&gt;&lt;/a&gt;,&amp;nbsp;which does a good job of creating hybrid clouds.&amp;nbsp;Even so, the effort to make sure that both private-facing and public-facing ends work seamlessly, coupled with our cloud application platform, is not going to be trivial. Eventually support and maintenance cost will also increase. Issues such as who is responsible for the server or network if there is an outage, replacement of hardware and reconfiguration becomes fuzzy as well. Support costs may eclipse any cost savings from running a hybrid cloud in the first place.&amp;nbsp;A lot of time will be spent dealing with such issues, especially if the IT department is also you - the design engineer.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;b&gt;Best or worst of both worlds?&lt;/b&gt;&lt;br /&gt;We aren't against the idea of hybrid clouds. If your local datacenter is not of sufficient size, making the effort to transit to a hybrid does not seem to be worth it, especially if you are doing it just for chip design. We don't want you to be in a situation where instead of enjoying the best of both worlds, you are suffering from the worst of both worlds.&lt;br /&gt;&lt;br /&gt;To sum up, we're open to any solution as long as it makes sense for our customers. Making a good, elegant and affordable solution is not easy and will require rigorous testing and support effort. For now, we will concentrate on ensuring our solutions on the public cloud is secure, safe and easy to use.&lt;br /&gt;&lt;br /&gt;Feel free to comment or lob any questions/disagreements to &lt;a href="mailto:tellus@plunify.com"&gt;&lt;span style="color: #0b5394;"&gt;tellus@plunify.com&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;- Kirvy&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-4255172346931076478?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/4255172346931076478/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2011/12/private-or-public-clouds-or-why-not.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4255172346931076478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4255172346931076478'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2011/12/private-or-public-clouds-or-why-not.html' title='Private or Public clouds? Or why not both?'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-8425495370379074165</id><published>2011-12-06T22:05:00.001-08:00</published><updated>2011-12-06T22:09:53.595-08:00</updated><title type='text'>Coming to a location near you!</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.plunify.com/images/introletter1.png" target="_blank"&gt;&lt;img border="0" height="456" src="http://3.bp.blogspot.com/-efVg0vrjt8Y/Tt8CDlcIIKI/AAAAAAAAALo/5ciXgn-pTsU/s640/introletter1.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-8425495370379074165?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/8425495370379074165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2011/12/coming-to-location-near-you.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/8425495370379074165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/8425495370379074165'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2011/12/coming-to-location-near-you.html' title='Coming to a location near you!'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-efVg0vrjt8Y/Tt8CDlcIIKI/AAAAAAAAALo/5ciXgn-pTsU/s72-c/introletter1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-349443932021043632</id><published>2011-10-19T02:40:00.000-07:00</published><updated>2011-10-19T02:42:19.783-07:00</updated><title type='text'>Event: Accelerate TTM using Cloud Computing</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-MSwYTagH9m0/Tp6Z3iduNPI/AAAAAAAAAKM/SqHmT7Q0zQY/s1600/c_IMG_2254.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://4.bp.blogspot.com/-MSwYTagH9m0/Tp6Z3iduNPI/AAAAAAAAAKM/SqHmT7Q0zQY/s320/c_IMG_2254.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;At an &lt;a href="http://www.ssia.org.sg/edm/cloud/v4/"&gt;industry event&lt;/a&gt; last Friday (Oct 14th 2011), we had the chance to present a talk on, "&lt;a href="http://www.slideshare.net/plunify/plunify"&gt;What Can FPGA Designers Do With Personal Data Centers?&lt;/a&gt;" and demonstrate our new cloud-based approach to achieving timing closure for an FPGA design.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-PNEcEO9s684/Tp6Zq2Y_-rI/AAAAAAAAAJ8/EjeZwoZgQjo/s1600/c_IMG_2247.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://3.bp.blogspot.com/-PNEcEO9s684/Tp6Zq2Y_-rI/AAAAAAAAAJ8/EjeZwoZgQjo/s320/c_IMG_2247.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Opening&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Mike Holt, Vice-President of the Singapore Semiconductor Industry Association, opened the event with a look at this "cloud thingie" and how rising complexity of chip designs cause hardware designers problems in design and verification processes. Consequences include expensive product delays and bigger development bills. The cloud approach is increasingly seen as a good solution.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-e2qLXD_xvTw/Tp6Z198SXVI/AAAAAAAAAKE/s1XLxbeRiLE/s1600/c_IMG_2255.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://4.bp.blogspot.com/-e2qLXD_xvTw/Tp6Z198SXVI/AAAAAAAAAKE/s1XLxbeRiLE/s320/c_IMG_2255.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Background on cloud computing&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Kingsley Wood from Amazon Web Services (AWS) continued along this vein with an introduction to cloud computing, highlighting AWS features that might be of interest to a solutions provider like us. Specific to the semiconductor industry where compute-intensive tasks, large file sets and complex workflows abound, and with major EDA vendors already using the AWS infrastructure to provide some services, cloud computing has certainly become significant for chip design.&lt;br /&gt;&lt;br /&gt;Members of the audience were curious as to how annual licensing schemes for enterprise software have been changed into SaaS models in other industries, and how AWS and solution providers of cloud computing applications deal with data losses.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-m_do0RDKvbQ/Tp6Z55-eIfI/AAAAAAAAAKU/bnFbiQVFjHM/s1600/c_IMG_2258.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://2.bp.blogspot.com/-m_do0RDKvbQ/Tp6Z55-eIfI/AAAAAAAAAKU/bnFbiQVFjHM/s320/c_IMG_2258.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;IC Design-specific issues&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Meenu Sarin from VLSI Consultancy was up next, talking about specific challenges such as portability of design data in multi-vendor flows, standardization of IP and difficulties in scaling design processes. She also explored concerns about the cloud such as security and bandwidth, and raised the question of which organizations are best-suited to manage a cloud resource in the semiconductor industry where there are so many different stakeholders.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-dx5QONXJSgU/Tp6aDSAZ-TI/AAAAAAAAAKk/XjQBDby8S_g/s1600/c_IMG_2267.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://3.bp.blogspot.com/-dx5QONXJSgU/Tp6aDSAZ-TI/AAAAAAAAAKk/XjQBDby8S_g/s320/c_IMG_2267.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Personal data center for FPGA design&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;What does a designer think of when s/he sees the term, "data center for FPGA design"?&lt;br /&gt;We proposed the model of a dedicated resource with the requisite components for an FPGA design:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;IP to use in the design&lt;/li&gt;&lt;li&gt;Tools (and licenses) to crunch the design&lt;/li&gt;&lt;li&gt;Servers to run the tools&lt;/li&gt;&lt;li&gt;Collaboration mechanisms e.g. source control, permissive sharing&lt;/li&gt;&lt;li&gt;Portability of data (standardization) if/when a multi-vendor approach is desired&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;And from a dollars-and-cents point of view:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Pay-as-you-use&lt;/li&gt;&lt;/ul&gt;The above framework is by no means groundbreaking, as since the 1960s, our industry has seen mainframes and supercomputers in a centralized processing model evolve into dispersed workstations and distributed grid computing networks, all before cloud computing came into fashion. However, to us, scalability is the most attractive thing about the cloud, the best thing since sliced cloud.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-XVkBeB4wbaI/Tp6a5LRKq_I/AAAAAAAAAK8/eB6o4ioXpUY/s1600/Screen+Shot+2011-10-19+at+5.39.11+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://1.bp.blogspot.com/-XVkBeB4wbaI/Tp6a5LRKq_I/AAAAAAAAAK8/eB6o4ioXpUY/s320/Screen+Shot+2011-10-19+at+5.39.11+PM.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;Demo&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I then proceeded to show, "live", how an FPGA design that fails timing can be processed in parallel, &amp;nbsp;using a cloud managed by Plunify, to achieve timing closure.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Linux PC connected to the Internet via a Wifi network&lt;/li&gt;&lt;li&gt;Altera Quartus II 10.0 SP1&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;This is meant to mimic a typical designer's setup&lt;/blockquote&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://opencores.org/or1k/OR1200_OpenRISC_Processor"&gt;OR1200 32-bit microprocessor&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Altera Stratix III L50 FPGA&lt;/li&gt;&lt;li&gt;Plunify plugin scripts for Quartus&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Initially, there's a &lt;span class="Apple-style-span" style="color: red;"&gt;Timing Violation (Slack) of -0.519 ns&lt;/span&gt;&amp;nbsp;&lt;/blockquote&gt;&lt;blockquote&gt;Using a cloud-based approach, our tool calculates a series of parameters that will help the place-and-route tool, and then from the Linux PC, runs all these iterations in parallel.&lt;/blockquote&gt;Out of 35 iterations, each taking about 30 minutes, two iterations met timing.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Timing closure was achieved at &lt;b&gt;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;0.093 ns, 0.011 ns&lt;/span&gt;&lt;/b&gt;. *phew*!&lt;/li&gt;&lt;li&gt;Summary:&amp;nbsp;&lt;a href="http://www.plunify.com/reports/timingAnalysis.php?or1200_top=1"&gt;http://www.plunify.com/reports/timingAnalysis.php?or1200_top=1&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Only iterations "dse_point_19" and "dse_point_26" had the passing timing results. (Mouse-over the "i" icons in the table to see which parameters were used in each iteration (revision).&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;The demo went well, (to my relief - presenter anxiety!), and immediately the audience could see our cloud-based approach got to timing closure in almost 1/20 of the amount of time that would have been spent.&lt;br /&gt;&lt;br /&gt;Let us know how useful this feature is - tellus (at) plunify (dot) com&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-1AJZIiwLyIc/Tp6aFOYT_oI/AAAAAAAAAKs/gERwwVREdEg/s1600/c_IMG_2268.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://2.bp.blogspot.com/-1AJZIiwLyIc/Tp6aFOYT_oI/AAAAAAAAAKs/gERwwVREdEg/s320/c_IMG_2268.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;Productivity features in FPGA tools&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Wai-Leng Cheong, Sr Channel Manager at Altera proceeded to describe incremental compilation features of the Quartus II software, and how it can be used as a form of collaboration by design teams working at different locations. Among other things, the Quartus software makes use of multiple CPU cores which makes it even more well-suited to a cloud environment.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-994SuduWwoA/Tp6aHTYzvoI/AAAAAAAAAK0/-c00pf-_pWo/s1600/c_IMG_2271.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://4.bp.blogspot.com/-994SuduWwoA/Tp6aHTYzvoI/AAAAAAAAAK0/-c00pf-_pWo/s320/c_IMG_2271.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;Panel Discussion&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The last formal item for the event was a discussion where we talked about more high-level issues and the implications of cloud computing in the industry for end-users and vendors alike. Topics included:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Companies are finding different ways to speed up development, for example, improving software algorithms in tools, using hardware emulation platforms standalone or to augment software simulations, streamlining workflows and procedures, etc.&lt;/li&gt;&lt;li&gt;Cloud computing, though much hyped in general, is one way to improve time-to-market, and its economies of scale makes it especially compelling.&lt;/li&gt;&lt;li&gt;Lack of a common design methodology, data standards are some of the deeper issues that cause delays in the semiconductor industry.&lt;/li&gt;&lt;li&gt;Changes to the current annual licensing model must be justifiable in order to persuade tool vendors to switch to a hourly / daily / weekly / monthly / pay-as-you-use model. However the longer that process takes, the riskier it might become for vendors in the long run because the costs of sustaining the annual licensing model are becoming more and more daunting. EDA vendors have been facing slowing growth for a few years now.&lt;/li&gt;&lt;li&gt;Besides solutions providers, are foundries the natural candidates for the managers of a cloud solution?&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-WGg-bD6Pwus/Tp6aAPsfHZI/AAAAAAAAAKc/bxeR7iWmN3A/s1600/c_IMG_2264.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://1.bp.blogspot.com/-WGg-bD6Pwus/Tp6aAPsfHZI/AAAAAAAAAKc/bxeR7iWmN3A/s320/c_IMG_2264.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Because the economies of scale make so much more sense for both vendors and users alike, we have to work hard to put together scenarios whereby a change from the traditional annual licensing model to an hourly / daily / weekly / monthly model does not erode the bottom-line for companies which have been relying on the former for so long.&lt;br /&gt;&lt;br /&gt;It was a pleasure to be a part of this event organized by the Singapore Semiconductor Industry Association (&lt;a href="http://www.ssia.org.sg/"&gt;SSIA&lt;/a&gt;) and to meet fellow semiconductor professionals and hardware designers from local schools, research labs and companies.&lt;br /&gt;&lt;br /&gt;- harnhua&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-349443932021043632?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/349443932021043632/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2011/10/event-accelerate-ttm-using-cloud.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/349443932021043632'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/349443932021043632'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2011/10/event-accelerate-ttm-using-cloud.html' title='Event: Accelerate TTM using Cloud Computing'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-MSwYTagH9m0/Tp6Z3iduNPI/AAAAAAAAAKM/SqHmT7Q0zQY/s72-c/c_IMG_2254.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-4589236942444436307</id><published>2011-09-27T18:56:00.000-07:00</published><updated>2011-09-27T18:56:48.255-07:00</updated><title type='text'>Safer in the Cloud?</title><content type='html'>Security has long been one of the first and most pressing questions for the cloud. Users and business owners are naturally wary about placing sensitive data in the hands of a 3rd-party. This is especially true for the semiconductor chip design industry, and rightly so.&lt;br /&gt;&lt;br /&gt;However, one point which is gaining acceptance is that if one is concerned about security and does not have the resources to constantly monitor and implement the latest safeguards, why not entrust security to a dedicated provider? This trusted provider is industry-certified and spends all its time worrying about protecting their customers' data because simply, they will go out of business if that data is compromised.&lt;br /&gt;&lt;br /&gt;As described in the articles below, small and medium businesses can probably benefit most from adopting cloud solutions.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.zdnet.com/blog/service-oriented/data-may-actually-be-safer-in-the-cloud-report/7741"&gt;"Data may actually be safer in the cloud" - ZDNet&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://online.wsj.com/article/SB10001424053111904060604576572930344327162.html"&gt;"Seeking Safety in Clouds" - Wall Street Journal&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height: 20px;"&gt;"Small and medium businesses are insane not to leverage the advantages of cloud computing,"&lt;/span&gt;&lt;/blockquote&gt;No system is foolproof, and we will hear about data leaks from time to time, but from experience, it seems reasonable to say that specialized providers like Amazon are often better-positioned to handle security in many cases.&lt;br /&gt;&lt;blockquote&gt;&amp;nbsp;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-4589236942444436307?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/4589236942444436307/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2011/09/safer-in-cloud.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4589236942444436307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4589236942444436307'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2011/09/safer-in-cloud.html' title='Safer in the Cloud?'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-4651749968895979506</id><published>2011-08-30T20:15:00.000-07:00</published><updated>2011-08-30T20:15:51.356-07:00</updated><title type='text'>Cloud computing &amp; software piracy: From prevention and mitigation to win-win?</title><content type='html'>Came across an article on EDN that talks about &lt;a href="http://www.edn.com/article/518710-The_quandary_of_EDA_software_piracy.php"&gt;software piracy in EDA&lt;/a&gt;&amp;nbsp;land.&lt;br /&gt;Apparently 30% to 40% of all EDA software use is via pirated licenses.&lt;br /&gt;Imagine what this means in terms of lost revenue to EDA vendors, and to endusers, it might be argued that a rival design team is spending far less on far more software licenses - and getting their products out to market much quicker.&lt;br /&gt;&lt;br /&gt;Sounds like an echo of problems plaguing the general software, music and film industries?&lt;br /&gt;If fewer and fewer people buy legitimate licenses (software, songs, movies etc.) then perhaps fewer EDA vendors (artists) will be able to make a good living, and there might eventually be less EDA software (works of art) for endusers.&lt;br /&gt;&lt;br /&gt;The cloud has been talked about as a potential means of prevention.&lt;br /&gt;According to a Cadence spokesperson,&lt;br /&gt;&lt;blockquote&gt;"When we have software as a service, either at our own cloud or an external Cadence-certified cloud, we basically retain control of the environment, including the licensed server.&amp;nbsp;Licensing becomes a non-issue."&lt;/blockquote&gt;There are few doubts as to whether a cloud computing solution will help mitigate software piracy, given its degree of control and flexibility for both vendors and endusers.&lt;br /&gt;&lt;br /&gt;But there is a deeper side of the issue that we shouldn't ignore, and that is when there is an arms race, both sides would do better to embrace each other rather than compete to see who can create the better licensing mechanism or more elegant key crack.&lt;br /&gt;As a Chinese saying goes, “道高一尺魔高一丈” - loosely translated as, "When the priest advances one foot, the devil advances by ten" - a perpetual arms race, essentially, which is probably going to bleed the vendors dry and cause inefficiencies for legitimate users in the long run.&lt;br /&gt;&lt;br /&gt;What I'm trying to express is, there must be a more effective middle ground where EDA vendors and endusers can come together in a win-win situation.&lt;br /&gt;The cloud is a wonderful place to meet in the middle, affording each side:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;effective means of control and usage&lt;/li&gt;&lt;li&gt;smooth trial and feedback&lt;/li&gt;&lt;li&gt;efficient delivery and support on a large (in EDA anyway) scale (Larry Disenhof, group director of export compliance and government affairs at Cadence, estimates that one third of such piracy could be turned into revenue)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;What are your thoughts?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Harnhua&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-4651749968895979506?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/4651749968895979506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2011/08/cloud-computing-software-piracy-from.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4651749968895979506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4651749968895979506'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2011/08/cloud-computing-software-piracy-from.html' title='Cloud computing &amp; software piracy: From prevention and mitigation to win-win?'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-6441997807967798379</id><published>2011-08-21T20:31:00.000-07:00</published><updated>2011-08-21T22:55:30.327-07:00</updated><title type='text'>Maximizing parallelism in FPGAs - a discussion</title><content type='html'>Came across an interesting discussion on FPGAs and parallelism on LinkedIn:&lt;br /&gt;&lt;br /&gt;The original poster, Karl Stevens, starts off by asking,&lt;br /&gt;&lt;blockquote&gt;In the context of an FPGA, parallelism is an important item. Which kinds of parallelism apply and how much performance is gained? Compared to what?&lt;br /&gt;Most kinds of parallelism apply to cpu's. FPGAs can do register transfers and ALU functions in parallel, that is if there are multiple alu's available. FPGA is a special purpose processor?&amp;nbsp;&lt;/blockquote&gt;and goes on to elaborate:&lt;br /&gt;&lt;blockquote&gt;The kinds of parallelism that I have found:&lt;br /&gt;bit level -- simply make the data wider.&lt;br /&gt;instruction level -- involves pipelining if the process is done in stages&lt;br /&gt;data -- same calculation on different sets of data -- implies parallel; ALU's, data sources&lt;br /&gt;task -- different calculation on same or different sets of data -- same data implies shared data&amp;nbsp;&lt;/blockquote&gt;&lt;blockquote&gt;These are conceptual and not precise.&lt;br /&gt;Data width is a non issue.&lt;br /&gt;Pipelining usually implies an "instruction" kind of control where the execution/assign step depends on an operator code and the other stages get the data and dispose of the result.&lt;br /&gt;On chip memory is so fast that a dual port ram can read and write simultaneously in about a third of a typical clock interval. Staging may only apply when external memory is used.&lt;br /&gt;Parallel data -- use the same controls for parallel alu's and memories&lt;br /&gt;Parallel tasks -- repeat the above for the specific task.&lt;br /&gt;The synthesis tools focus on extracting "parallelism" from an imperative program and so far are reported to be almost as good as a college student using classroom assignments as inputs.&lt;br /&gt;When HLS. ESL. or whatever mature, what will be the measurable benefit? Is it the pie in the sky dream that C programmers can design FPGAs? Or will it be performance? How much?&lt;/blockquote&gt;In terms of architecture, FPGAs certainly seem well-suited for parallelism. They are like blank slates; you are free to design the logic, balance out the area and speed requirements plus the interfacing to external logic and you're done.&lt;br /&gt;&lt;br /&gt;Highlighting some comments:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;"Okay, the marketing people tell me that I just throw as much logic at my problem as I like, especially for DSPs, however that depends 100% on how my design works with the rest of the system. So it's never as simple as that, isn't it?"&lt;/li&gt;&lt;li&gt;"What are the trade-offs between pipelining and parallelism? For example, in a mixer design where you have data sampling followed by processing via an FFT, and then data output?"&lt;/li&gt;&lt;li&gt;"Do these questions apply similarly to software architects when designing their systems?"&lt;/li&gt;&lt;li&gt;"Does flexibility to place your logic kill performance?"&lt;/li&gt;&lt;li&gt;"Would an array of general purpose processors offer similar performance benefits as an array of FPGAs, given that processor technology has been pretty much commoditized?"&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Varun Nagpal stated some ways to think about implementing algorithms:&lt;/div&gt;&lt;blockquote&gt;Now algorithms have many associated dimensions which can help to decide whether one needs to make a dedicated circuit architecture on FPGA/ASIC or if a specific class of processor can be used&lt;br /&gt;-. Decomposability: iterative, recursive.&lt;br /&gt;-. Control intensive i.e. react to events, data intensive i.e. transforms input to output. or a combination&lt;br /&gt;-. Data storage requirements and data precision.&lt;br /&gt;-. Repetition or frequency of specific operations&lt;br /&gt;-. latency(ns,us,ms,s) vs throughput(MOPS or GOPS or TOPS or POPS)&lt;/blockquote&gt;Mike Field revealed some results that he had gotten for a Mandelbrot design:&lt;br /&gt;&lt;blockquote&gt;I built a Mandelbrot Fractal viewer running at 100MHz on a Spartan-3E. It is inherently parallel, as each pixel can be computed in isolation. It is most probably perfectly sutied for FPGA implementation.&lt;br /&gt;&lt;br /&gt;It computed “deep” images (those with high average loop iterations per pixel) to within a few % of a single AMD 2GHz core. On a larger FPGA with more 18x18 multipliers the pipeline depth could be doubled or tripled, with a corresponding scaling of throughput. For “shallow” images the throughput is hampered by the limited RAM write bandwidth (it was also servicing a 1024x768 VGA display) so many completed calculations being sent through the pipeline for another round.&lt;br /&gt;&lt;br /&gt;Speed comes from being able to pipeline the calculation. In software the it is a loop of a dozen or so instructions – a bit complex multiply, something close to a complex abs() function, two comparisons an 8bit increment, and a jump. On the FPGA I implemented it as a 12 stage pipeline, which gives performance of one loop iteration per clock Careful selection of data representation also allows the best use of the FPGA hardware (36 bit fixed point with external sign), where on a CPU you only get the choice of “double” or “float”.&lt;br /&gt;&lt;br /&gt;Depending on your point of view, this is either “Just as fast as an AMD CPU” (which is still pretty good), or 20x times faster (on a per clock cycle basis). It is also very green – it has superb “compute per watt” at less than 2.5W compared to a desktop PC.&lt;/blockquote&gt;And finally, a pearl of FPGA wisdom from a wise man that Mike met,&amp;nbsp;"FPGA design is the art of balancing size, memory and speed" ; )&lt;br /&gt;&lt;br /&gt;- Harnhua&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-6441997807967798379?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/6441997807967798379/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2011/08/maximizing-parallelism-in-fpgas.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/6441997807967798379'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/6441997807967798379'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2011/08/maximizing-parallelism-in-fpgas.html' title='Maximizing parallelism in FPGAs - a discussion'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-8787337395542826658</id><published>2011-07-27T23:48:00.000-07:00</published><updated>2011-08-17T04:00:23.967-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='startup FPGA cloud plunify'/><title type='text'>Retrofitting our platform and ourselves</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;We are glad to announce significant upgrades to our cloud management platform!&lt;br /&gt;&lt;br /&gt;Although the frontend online interface looks almost the same, the backend has become a much stronger beast. Essentially we restructured the code to make the platform even more scalable and configurable.&lt;br /&gt;&lt;br /&gt;Inspired by the recent spate of hacking activities, we also added a lot of security enhancements - paranoia perhaps, but absolutely necessary.&lt;br /&gt;Without revealing the gory details, these include using better encryption and inserting additional encryption at all levels of the platform. We applied Amazon Web Services APIs to ensure that the walls between each user's access rights are higher than before. We made it such that Virtual Private Networks add another layer of protection when necessary. Well, one can never stop enhancing security.&lt;br /&gt;&lt;br /&gt;Finally, we will revamp our website.&lt;br /&gt;We have been reading lots of stuff about us (&lt;a href="http://www.linkedin.com/groups/Plunify-Cloud-based-FPGA-development-56713.S.56096214"&gt;LinkedIn&lt;/a&gt;), and our website should better reflect Plunify's value proposition.&lt;br /&gt;&lt;br /&gt;As a startup, we have to get this right. &lt;br /&gt;"&lt;i&gt;Your startup is essentially an organization built to search for a repeatable and scalable business model&lt;/i&gt;" -&amp;nbsp;&lt;a href="http://steveblank.com/2010/01/25/whats-a-startup-first-principles/"&gt;&lt;i&gt;Steve Blank&lt;/i&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Thanks for reading and let us know your thoughts.&lt;br /&gt;&lt;br /&gt;Kirvy&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-8787337395542826658?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/8787337395542826658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2011/07/revamp-of-our-platform-and-ourselves.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/8787337395542826658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/8787337395542826658'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2011/07/revamp-of-our-platform-and-ourselves.html' title='Retrofitting our platform and ourselves'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-292729985982544852</id><published>2011-04-01T00:41:00.000-07:00</published><updated>2011-04-01T00:41:02.889-07:00</updated><title type='text'>The Cloud a better match for FPGAs?</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;A few days ago, Synopsys &lt;a href="http://www.eetimes.com/electronics-news/4214590/Synopsys-preps--surge--verification-via-cloud"&gt;announced&lt;/a&gt; that they are preparing for their tools to make use of cloud computing. Which was a little strange considering &lt;a href="http://www.eetimes.com/electronics-news/4212823/EDA-not-yet-ready-for-cloud-computing"&gt;comments to the contrary&lt;/a&gt;&amp;nbsp;from both Cadence and Synopsys just a couple of months earlier.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 16px;"&gt;"Synopsys Chairman and CEO Aart de Geus told an audience at the company's SNUG San Jose users' group event here Monday that using a "surge" in computing resources would allow designers to run a number of verification simulations in days or weeks that may have taken many months otherwise."&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 16px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 16px;"&gt;Finally! One of the "big guys" has spoken!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 16px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif; line-height: 16px;"&gt;Simply put, it's a gift for us.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 16px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif; line-height: 16px;"&gt;To most, the contents of the above article are far more persuasive than 2 guys in a&amp;nbsp;startup trying to convince designers, partners and investors that Cloud Computing represents a huge &amp;nbsp;opportunity for EDA.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif; line-height: 16px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif; line-height: 16px;"&gt;Managed properly, the Cloud promises remarkable productivity gains.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif; line-height: 16px;"&gt;The Cloud is actually not&lt;i&gt; that&lt;/i&gt; scary once one understands it.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 16px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 16px;"&gt;Mr. de Geus does not seem to be sure of the business model for now; perhaps he is concerned how an SaaS solution which charges by per hour is going to cannibalize their per license software revenues. &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif; line-height: 16px;"&gt;This may be a hurdle for big companies like Synopsys and Cadence.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif; line-height: 16px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 16px;"&gt;FPGA companies in comparison do not have this problem. Their revenue is primarily driven by chip sales. Hence&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif; line-height: 16px;"&gt;Cloud Computing is a better fit for FPGAs.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-292729985982544852?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/292729985982544852/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2011/04/cloud-better-match-for-fpgas.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/292729985982544852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/292729985982544852'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2011/04/cloud-better-match-for-fpgas.html' title='The Cloud a better match for FPGAs?'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-4573102343954939125</id><published>2011-01-10T23:16:00.000-08:00</published><updated>2011-01-10T23:51:26.118-08:00</updated><title type='text'>How to run logic simulations online!</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_9wZsv4HY9h0/TSv7Pa-Q8CI/AAAAAAAAAF8/158gyZQWEOU/s1600/sim.png" imageanchor="1"&gt;&lt;img alt="" border="0" src="http://4.bp.blogspot.com/_9wZsv4HY9h0/TSv7Pa-Q8CI/AAAAAAAAAF8/158gyZQWEOU/s1600/sim.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Need to run Verilog or VHDL simulations but don't have the right software installed?&lt;br /&gt;Simulations running a little too slowly?&lt;br /&gt;&lt;br /&gt;With Plunify's online simulation service (and in future, synthesis and implementation), now all you need are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;An Internet connection and any major web browser.&lt;/li&gt;&lt;li&gt;The ability to run a Perl script on your PC&amp;nbsp;(see detailed requirements below).&lt;/li&gt;&lt;li&gt;A user configuration file telling us about your simulation&amp;nbsp;(see sample below).&lt;/li&gt;&lt;li&gt;Verilog or VHDL source files.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;br /&gt;&lt;u&gt;Here's a VHDL example:&lt;/u&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;Download the&amp;nbsp;&lt;a href="http://www.plunify.com/platypus/examples/adder.zip"&gt;sample&lt;/a&gt;:&lt;br /&gt;- a&amp;nbsp;Perl script (&lt;em&gt;platypus.pl&lt;/em&gt;),&lt;br /&gt;- the sample user configuration file (&lt;em&gt;adder.cfg&lt;/em&gt;);&amp;nbsp;and&lt;br /&gt;- source code (&lt;em&gt;adder.zip&lt;/em&gt;).&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Extract&amp;nbsp;&lt;em&gt;adder.zip&lt;/em&gt;&amp;nbsp;into a local folder.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Edit the&amp;nbsp;username, password, source_folder&amp;nbsp;fields in&amp;nbsp;&lt;em&gt;adder.cfg&lt;/em&gt;&lt;br /&gt;(First-time users need&amp;nbsp;to check email and click on an activation link before viewing results).&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Run the script:&amp;nbsp;&lt;em&gt;perl&amp;nbsp;platypus.pl&amp;nbsp;--cfg adder.cfg&lt;/em&gt;&lt;br /&gt;If it is successful, you should see the following message:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TSv6LvjB1PI/AAAAAAAAAFo/S7AJXwlTCXc/s1600/submit.png" imageanchor="1"&gt;&lt;img alt="" border="0" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TSv6LvjB1PI/AAAAAAAAAFo/S7AJXwlTCXc/s1600/submit.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;(see below under "Requirements" if you hit errors for missing Perl modules)&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Log on at&amp;nbsp;&lt;a href="https://www.plunify.com/login.php" target="_blank"&gt;https://www.plunify.com/login.php&lt;/a&gt;&lt;br /&gt;Go to&amp;nbsp;&lt;strong&gt;Results&lt;/strong&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TSv7LuD2N_I/AAAAAAAAAF0/gElPtYYXh6s/s1600/result.png" imageanchor="1"&gt;&lt;img alt="" border="0" height="110" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TSv7LuD2N_I/AAAAAAAAAF0/gElPtYYXh6s/s320/result.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_9wZsv4HY9h0/TSv-wIzNHjI/AAAAAAAAAGA/aQ_TG7m-ydI/s1600/result1.png" imageanchor="1"&gt;&lt;img alt="" border="0" height="107" src="http://3.bp.blogspot.com/_9wZsv4HY9h0/TSv-wIzNHjI/AAAAAAAAAGA/aQ_TG7m-ydI/s320/result1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_9wZsv4HY9h0/TSv7CquZ2sI/AAAAAAAAAFw/65s1Y-FgINQ/s1600/wave.png" imageanchor="1"&gt;&lt;br /&gt;&lt;br /&gt;&lt;img alt="" border="0" height="256" src="http://2.bp.blogspot.com/_9wZsv4HY9h0/TSv7CquZ2sI/AAAAAAAAAFw/65s1Y-FgINQ/s400/wave.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;That's it.&lt;br /&gt;&lt;br /&gt;If the job submission is successful, you will get a notification email after 2-3 minutes.&lt;br /&gt;It takes a little longer to run the first simulation job, but subsequent ones will be faster.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Requirements:&lt;/strong&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A working installation of Perl and the CPAN modules:&lt;br /&gt;&lt;a href="http://search.cpan.org/~jv/Getopt-Long-2.38/lib/Getopt/Long.pm"&gt;Getopt::Long&lt;/a&gt;&lt;br /&gt;&lt;a href="http://search.cpan.org/~adamk/Archive-Zip-1.30/lib/Archive/Zip.pm"&gt;Archive::Zip&lt;/a&gt;&lt;br /&gt;&lt;a href="http://search.cpan.org/~gaas/libwww-perl-5.837/lib/LWP/UserAgent.pm"&gt;LWP::UserAgent&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Do use mechanisms like the CPAN shell (In Linux, perl -MCPAN -e shell, install Archive::Zip) to install modules.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;strong&gt;How it works:&lt;/strong&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;The configuration file&amp;nbsp;contains your details&lt;br /&gt;&lt;br /&gt;&lt;b&gt;     username&lt;/b&gt;&amp;nbsp;= email address as a user name to log on to Plunify&lt;br /&gt;&lt;b&gt;     password&lt;/b&gt;&amp;nbsp;= user password (&amp;gt; 5 characters), in plain text&lt;br /&gt;&lt;b&gt;     jobtype&lt;/b&gt;&amp;nbsp;= type of job (currently 'SIM' is the only valid type)&lt;br /&gt;&lt;b&gt;     language&lt;/b&gt;&amp;nbsp;= Verilog or VHDL (Icarus Verilog or GHDL, pending mixed language support)&lt;br /&gt;&lt;b&gt;     source_folder&lt;/b&gt;&amp;nbsp;= root folder of directory tree containing source files&lt;br /&gt;&lt;b&gt;     toplevel&lt;/b&gt;&amp;nbsp;= top level module name&lt;br /&gt;&lt;b&gt;     apicode&lt;/b&gt;&amp;nbsp;= PLATYPUS, for our internal use&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;The script sends both your configuration file and your source files to Plunify via a secure connection, and runs your simulation.&lt;br /&gt;&lt;br /&gt;Let us&amp;nbsp;&lt;a href="mailto:tellus@plunify.com"&gt;know&lt;/a&gt;&amp;nbsp;what you think and&amp;nbsp;&lt;strong&gt;how we can improve it&lt;/strong&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-4573102343954939125?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/4573102343954939125/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2011/01/remote-logic-simulation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4573102343954939125'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4573102343954939125'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2011/01/remote-logic-simulation.html' title='How to run logic simulations online!'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_9wZsv4HY9h0/TSv7Pa-Q8CI/AAAAAAAAAF8/158gyZQWEOU/s72-c/sim.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-3805228455276891574</id><published>2010-11-24T01:07:00.000-08:00</published><updated>2010-12-02T01:19:26.502-08:00</updated><title type='text'>DDT: Are IP cores supposed to work out of the box?</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TLK7sl7eOXI/AAAAAAAAAFg/Hmx9sjdoGrk/s1600/DDT.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="98" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TLK7sl7eOXI/AAAAAAAAAFg/Hmx9sjdoGrk/s320/DDT.jpg" style="cursor: move;" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Too much turkey over the Thanksgiving break would have dulled the senses a little, if not for the sobering arrival of our November's story from a reader in Japan.&lt;br /&gt;&lt;br /&gt;(Translated)&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;"&lt;/span&gt;&lt;/b&gt;We are a design contractor implementing FPGA projects for clients. In the summer of 2007, we received a request for a system that uses PCI. As we did not have our own PCI IP core at that time, we decided to purchase one from a major IP provider.&lt;/blockquote&gt;&lt;blockquote&gt;The sales engineer kindly gave us a working reference design and development board for that IP core.&lt;/blockquote&gt;&lt;blockquote&gt;However, because of reasons that we never managed to figure out, the PCI core would fail place-and-route, or fail to work in actual hardware at certain times.&lt;/blockquote&gt;&lt;blockquote&gt;After our engineering team debugged it for a month, we finally asked the IP vendor for assistance. Their engineers were very apologetic and tried their best to help, however because their development team was not based in Japan, response was slow.&lt;/blockquote&gt;&lt;blockquote&gt;Eventually, we had to give up on the project and ask the client for their forgiveness.&lt;/blockquote&gt;&lt;blockquote&gt;To this day, we do not know what was wrong with the PCI IP core, but we have since developed our own.&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;"&lt;/span&gt;&lt;/b&gt;&lt;/blockquote&gt;&lt;b&gt;-- "d_oni", design consultant&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-3805228455276891574?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/3805228455276891574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/11/ddt-are-ip-cores-supposed-to-work-out.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/3805228455276891574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/3805228455276891574'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/11/ddt-are-ip-cores-supposed-to-work-out.html' title='DDT: Are IP cores supposed to work out of the box?'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_9wZsv4HY9h0/TLK7sl7eOXI/AAAAAAAAAFg/Hmx9sjdoGrk/s72-c/DDT.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-1514759394387527536</id><published>2010-11-15T07:49:00.000-08:00</published><updated>2010-12-02T01:35:12.775-08:00</updated><title type='text'>More than just cheap computing resources</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;Many hardware designers whom we spoke with, including investors,&amp;nbsp;students, engineers, regardless of whether they work with ASICs or FPGAs, associate cloud computing with utility or cheap computing power. Instead of spending half a million dollars on servers, networking equipment and maintenance, one can simply use a "rental cloud".&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;While the benefits are commonly touted, in the digital hardware world, certain attributes like convenience, on-demand scalability and parallel execution of design tasks really come into the fore.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;For example, instead of designing, synthesizing, placing and routing a single design with a single set of parameters or constraints, let's try the three most probable design configurations at the same time. Once the compute-intensive tasks are complete, your compute resources can be relinquished to save on maintenance time and effort, and re-acquired when the need arises.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-1514759394387527536?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/1514759394387527536/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/11/more-than-just-cheap-computing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/1514759394387527536'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/1514759394387527536'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/11/more-than-just-cheap-computing.html' title='More than just cheap computing resources'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-3023538416630424409</id><published>2010-10-27T21:32:00.000-07:00</published><updated>2010-10-27T23:41:12.118-07:00</updated><title type='text'>DDT: There are resets and then there are resets...</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TLK7sl7eOXI/AAAAAAAAAFg/Hmx9sjdoGrk/s1600/DDT.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="98" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TLK7sl7eOXI/AAAAAAAAAFg/Hmx9sjdoGrk/s320/DDT.jpg" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Our inaugural DDT story comes from an embedded systems engineer at FPGA vendor X, proving that hey, even FPGA manufacturers have their fair share of design woes.&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;It was a windy, somewhat cloudy day in San Jose, at a time when embedded processor blocks in FPGAs were just starting to become popular.&lt;br /&gt;&lt;br /&gt;I was tinkering with an ML300 board, which had a Virtex-II Pro FPGA device with a built-in PPC405 processor. A customer's design was loaded onto the board, and that displayed very strange memory behavior.&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;random read/write errors&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;software applications crashed at odd places&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;Sensing a memory problem, we checked the following:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;the software application C source code... hmm... nothing seemed wrong&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;dumping memory at various locations and breakpoints... looked okay&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;poring over the Verilog/VHDL... worked well on other designs&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;simulations ran fine- probing the board hardware&lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;power supply... up to spec&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;voltage levels on the FPGA's pins... checked out okay&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;Different boards showed the same symptoms so it wasn't a board-specific problem. Essentially, all the checkboxes were being ticked to no avail. But the symptoms persisted and something was obviously wrong. Frustration set in, especially since the ML300 embedded system had been well-used in the field without similar problems.&lt;br /&gt;&lt;br /&gt;Finally someone noticed that the errors happened ONLY when the processor underwent a soft reset (hit the reset button instead of power-cycling the board). Bingo. That pointed to the reset states of the modules in the FPGA, and in particular, the processor. And it took a register-by-register comparison of the processor's state after a hard reset versus that after a soft reset to find the bug.&lt;br /&gt;&lt;br /&gt;It was a processor firmware bug--a couple of the cache registers weren't initialized properly. On a hard reset, those registers were set to the right values, but on a soft reset...&amp;nbsp;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;"&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;b&gt;--&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;b&gt;"Resetter", design engineer&lt;/b&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-3023538416630424409?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/3023538416630424409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/10/ddt-there-are-resets-and-then-there-are.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/3023538416630424409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/3023538416630424409'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/10/ddt-there-are-resets-and-then-there-are.html' title='DDT: There are resets and then there are resets...'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_9wZsv4HY9h0/TLK7sl7eOXI/AAAAAAAAAFg/Hmx9sjdoGrk/s72-c/DDT.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-100659739605732503</id><published>2010-10-10T22:42:00.000-07:00</published><updated>2010-10-27T20:37:10.002-07:00</updated><title type='text'>DDT - "Death by Design Thursday"</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TLK7sl7eOXI/AAAAAAAAAFg/Hmx9sjdoGrk/s1600/DDT.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="98" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TLK7sl7eOXI/AAAAAAAAAFg/Hmx9sjdoGrk/s320/DDT.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;When users tell us about what plagues them in their work, we get a lot of different, fascinating responses. Plunify can address some of their problems, but for many, experience, ingenuity and resourcefulness are still the best tools for a developer. Beyond those, perhaps one ends up in the realm of miracles. ; )&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;So we decided to start "&lt;b&gt;DDT&lt;/b&gt;" - "&lt;u&gt;D&lt;/u&gt;eath by &lt;u&gt;D&lt;/u&gt;esign &lt;u&gt;T&lt;/u&gt;hursday"! &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;On the last Thursday of the month, we'll put up some of the craziest stories we get about FPGA designers and their projects. The first one will be coming out at the end of this month - 28th Oct.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;These can be as simple as how a bug or person delayed your project, or maybe your dog crashed the Place-and-Route that has been running for three days. In any case, we'd love to hear them all! Tell us if you are working on any cool projects involving FPGA as well, especially if you are a hobbyist.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;Please send your stories to&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;&lt;a href="mailto:tellus@plunify.com"&gt;tellus@plunify.com&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;. Your name and contact details will be kept confidential if you like. Have fun!&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-100659739605732503?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/100659739605732503/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/10/ddt-death-by-design-thursday.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/100659739605732503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/100659739605732503'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/10/ddt-death-by-design-thursday.html' title='DDT - &quot;Death by Design Thursday&quot;'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_9wZsv4HY9h0/TLK7sl7eOXI/AAAAAAAAAFg/Hmx9sjdoGrk/s72-c/DDT.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-8487271670046975366</id><published>2010-09-25T07:11:00.000-07:00</published><updated>2010-09-25T07:11:32.874-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='trust'/><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><category scheme='http://www.blogger.com/atom/ns#' term='Amazon'/><category scheme='http://www.blogger.com/atom/ns#' term='AWS'/><title type='text'>Can we trust the Cloud?</title><content type='html'>I recently had the pleasure of hearing Aaron Patzer of &lt;a href="http://www.mint.com/"&gt;Mint.com&lt;/a&gt; speak at a Founder's Institute event. It was about how Mint was found and their early challenges.&lt;br /&gt;One of the challenges he faced was similar to what we face at Plunify - security and trust&lt;br /&gt;&lt;br /&gt;Mint.com helps you manage personal finances. Their interactive, user-friendly software keeps track of your spending, loans, etc.&lt;br /&gt;However you have to key in confidential information such as banking passwords so that Mint can retrieve your data from your financial institutions.&lt;br /&gt;&lt;br /&gt;"What! Key in my passwords? You must be joking!" - Yes, that was my initial reaction.&lt;br /&gt;Check out Mint's &lt;a href="http://satisfaction.mint.com/mint"&gt;forum&lt;/a&gt; and you will see lots of security-related posts.&lt;br /&gt;I would say that the leap of faith required by Mint's users might be greater than that Plunify asks of ours. Yet, Mint is able to allay a lot of these concerns(not all--a fraction of consumers will most likely never be convinced).&lt;br /&gt;&lt;br /&gt;At Plunify, instead of your bank passwords, what we ask for is your source code.&lt;br /&gt;Which are just as important as your banking details.&lt;br /&gt;&lt;br /&gt;One of the things that we like about the Cloud is how much &lt;strong&gt;more security&lt;/strong&gt; we can provide to our users.&lt;br /&gt;&lt;br /&gt;Plunify uses Amazon Web Services (AWS) for your Cloud resources. We spend a lot of time understanding AWS's security policies because this is important to our users.&lt;br /&gt;&lt;br /&gt;To highlight a couple of important points of the &lt;a href="http://awsmedia.s3.amazonaws.com/pdf/AWS_Security_Whitepaper.pdf"&gt;22 page security white paper&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;1) Certifications and Accreditation&lt;br /&gt;Amazon controls are evaluated every 6 months by an independent auditor in accordance with Statement on Auditing Standards No. 70 (SAS70) Type II audit procedures.&lt;br /&gt;&lt;br /&gt;2) Employees&lt;br /&gt;AWS requires that staff with potential access to customer data undergo an extensive Amazon Web Services background check (as permitted by law) commensurate with their position and level of access to data. Every access grant is reviewed every 90 days and explicit re-approval is required or access to the resource is automatically revoked. When an employee’s record is terminated, Windows and UNIX accounts are disabled and Amazon’s permission management system removes the user from all systems.&lt;br /&gt;&lt;br /&gt;3) Physical Security&lt;br /&gt;Datacenters are housed in nondescript facilities. Physical access is strictly controlled both at the perimeter and at building ingress points by professional security staff utilizing video surveillance, intrusion detection systems, and other electronic means. Authorized staff must pass two-factor authentication a minimum of two times to access datacenter floors.&lt;br /&gt;&lt;br /&gt;4) Network Security &lt;br /&gt;AWS Security regularly scans all Internet facing service endpoint IP addresses for vulnerabilities (these scans do not include customer instances).&lt;br /&gt;Of course, there are protection against network attacks, firewalls, intrusion detection systems are in place. &lt;br /&gt;&lt;br /&gt;And the list goes on.&lt;br /&gt;&lt;br /&gt;Frankly, security in the Cloud seems better than that in most companies we know.&lt;br /&gt;For those companies, their core businesses aren't about IT infrastructure so they tend not to invest so heavily into IT security, infrastructure and related personnel.&lt;br /&gt;&lt;br /&gt;On the other hand, all it takes is for one AWS customer to report the leak of sensitive data as a result of using the AWS Cloud, and Amazon will be in deep trouble.&lt;br /&gt;&lt;br /&gt;We hope this gives some assurance about cloud security. Although technology doesn't fully answer the security and trust questions, effective use of technology will go a long way to allay users' concerns.&lt;br /&gt;In a second part on this topic, we will put up more information about how Plunify protects your data as well.&lt;br /&gt;&lt;br /&gt;If you have any questions or comments, feel free to &lt;a href="mailto:tellus@plunify.com"&gt;let us know&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-8487271670046975366?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/8487271670046975366/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/09/can-we-trust-cloud.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/8487271670046975366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/8487271670046975366'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/09/can-we-trust-cloud.html' title='Can we trust the Cloud?'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-1424569205601227417</id><published>2010-09-13T01:35:00.000-07:00</published><updated>2010-10-15T01:50:13.342-07:00</updated><title type='text'>有关FPGA设计的小贴士 - FPGA design tips (简体中文 followed by English)</title><content type='html'>&lt;span&gt;(Reproduced from &lt;a href="http://www.eefocus.com/ican/blog/10-09/196096_3ac9d.html"&gt;eefocus.com&lt;/a&gt;)&lt;/span&gt;&lt;br /&gt;Some tips on FPGA design found online, apparently contributed by an experienced designer.&lt;br /&gt;&lt;span&gt;Thought it made some good points with respect to general ways to approach the process.&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;很多人在学习FPGA设计，这里转载一个老鸟的博文，谈谈FPGA设计的17个小贴士。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1、状态机的问题，尽量不要写出太大的状态机，宁愿用一些小型的状态机来相互关联。&lt;br /&gt;&lt;br /&gt;2、推荐大家使用timequest来做时序约束，好处是，它可能对你的时序约束和你的设计对照做分析，在做时序分析之前，先对你的约束做分析，然后告诉你，你有多少该做的事情而没有做的（为被约束的路径）还有多少你要求做的，而没有被做的（被忽略的时序要求）。&lt;br /&gt;&lt;br /&gt;3、对时钟的约束，要重点关注两个现象。首先是尽量少的在时钟路径上引入逻辑，否则可能造成了时钟和时钟之间的skew。另外就是一种上下沿都需要用来采集数据的时钟。对于时钟的约束有很多的地方需要注意，否则你的电路都不知道会飞到哪里去。&lt;br /&gt;&lt;br /&gt;4、约束中最重要的一个关键，不要过约束。过约束的坏处一大堆，增加编译时间，资源使用过度，导致其他的时序问题。如果你对自己的约束有些不太放心，又或者说可能器件和器件之间会有很细微的差别，你可以给约束做一些余量，但是过约束是万万要不得的。&lt;br /&gt;&lt;br /&gt;5、   IP的作用就是为了完成一个特定的功能，所以我们并不需要知道它是如何实现的。作为一个IP，最重要的，其实是接口，因为你最重要的是需要知道是怎么让它  工作起来，而不是它怎么工作的。所以在看文档的时候，最主要看的就是接口信号，对所有的信号的作用有一个了解。例如，NiosII  CPU作为一个比较大型的模块，使用的是Avalon MM  点对点接口，它与普通的PCI接口不同的地方是，他可以支持同时多线控制。因为它没有总线的概念，不会在总线被占据的时候，其他任何通讯都无法进行。  NiosII是在SOPC builder  中被直接使用的，我们不需要知道具体有哪些信号，因为没有非常需要，我们是看不到这些接口的。在NiosII中，我们有两个Master Avalon  MM 接口，一个是Instruction Master Port,  这是CPU用来读取指令的接口。CPU通过这个端口从Memory上读取指令。另一个是Data master port,  很简单，这是用来连接数据通道的。比如说你要读取的数据，你要存储的数据，都是走这个通道。这两个端口可以连接同一个内存，在这种时候需要特别小心，很有  可能自己把自己的指令给改掉了。但是反过来思考一下，其实我们可以做什么？可以按照状况改变软件代码。NiosII中还有第三个端口，这是用来做  Debug用的端口。还有其他的一些接口，比如TCM接口。我们需要知道这些接口的存在，但是不需要知道细节，只有在用到的时候再去看相关的文档就好了。&lt;br /&gt;&lt;br /&gt;6、作为系统设计，是需要有一种粗旷型的大气魄，不需要在细节上浪费时间。你会发现很多的细节是没有意义的。并不是说我们不需要去研究细节，细节是很重要的，但是细节需要在被用到的时候才去关注就好了。&lt;br /&gt;&lt;br /&gt;7、在使用IP的时候，会遭遇到意想不到的痛苦的。所以，尽量不要依靠假设来臆想了模块的设置。而是尽量的适应环境，来配置自己的设计。作为一个FPGA的玩家，这种依照环境来改变的能力是必须的。&lt;br /&gt;&lt;br /&gt;8、考虑Cashes的设置，Cash 有两种，一种是用来做指令缓存的，一种是用来做数据缓存的。Cash的大小对程序的运行速度是有影响的。当然也没必要使用过多的资源。够用就好了。&lt;br /&gt;&lt;br /&gt;9、自定义指令设置。这是最有价值的设置。所谓自定义指令，并不是一个软件宏或者函数。而是一块硬件。当CPU调用到这个指令的时候，事实上它调用的就是这个硬件模块，它被嵌入在CPU中。而这其实就是NiosII好玩的地方。&lt;br /&gt;&lt;br /&gt;10、SOPC builder是QuartusII中用来建立，开发，维护系统的平台。虽然很多时候我们用它作为NiosII的一个嵌入式系统的开发环境，但我不要把思路只是局限在NiosII上面。它将成为一个包容全部系统内容的一个平台。&lt;br /&gt;&lt;br /&gt;11、  Avalon接口分成两种，一种是Avalon-MM接口，另一种是Avalon-ST  接口。MM接口，是通过地址来读写数据，更多的是用在控制逻辑上面。ST接口是用于点到点的流数据接口，更多的可以用在有高速通过率的模块中间。这两个接   口本身并没有矛盾，不是说势不两立的，一个模块中既可以有MM接口，甚至几个MM接口，也可以同时存在ST接口。作为一个点对点的接口定义，Avalon   可以做到高效的接口效果。这与PCI之类的总线接口是有本质区别的。PCI总线可以看作是铁路轨道，当一个火车在轨道上行驶的时候，就不可以有另一个火车  同时使用轨道。Avalon接口更多好像高速公路，车辆可以双向行驶。&lt;br /&gt;&lt;br /&gt;12、作为FPGA设计中比较独特的一个原则就是，这个世界不是你创造的，所以你必须去适应它，而不是顽固自己的意图。&lt;br /&gt;&lt;br /&gt;13、在FPGA中，除了门与门之间的延迟是固定的（时钟频率）外，一切的组合电路的延迟都是不确定的。记住这样一个规律就好了，凡是没有被门关过的信号都是不稳定的，都只是暂时的。&lt;br /&gt;&lt;br /&gt;14、在生成新的再生门（一些逻辑的结果作为时钟去驱动一个门，我们且管他叫作再生门吧）之前，你最好把这个时钟信号用原来的那种门在关一下。这样你获得的会是一个干净的，纯粹的时钟信号。&lt;br /&gt;&lt;br /&gt;15、针对新的一些器件，器件本身可以提供一些时钟控制模块，当你需要使用门锁（gated lock）的时候，尽量的使用这些模块，会让你的时钟变得安全（clock control block）。&lt;br /&gt;&lt;br /&gt;16、如果你不得不使用逻辑电路来锁门，而你的器件又没有特定的模块。那么最好的情况就是，你可以先用那个时钟，把你的门锁信号关一下。这样的好处就是可以把毛刺信号完全的规避在门外面，使你的时钟更加安全。&lt;br /&gt;&lt;br /&gt;17、上电初始值&lt;br /&gt;在通常的状况下，所有的门在上电的时候输出为低。但是这并不是不能改变的。你可以把上电设置为高，这样综合工具可能会做两种事情，把输出反向，或者使用preset控制（如果存在的话）把初始值放进门里。&lt;br /&gt;当时上电为高的做法，并不是非常必要，因为你其实是可以使用复位信号来获得你想要的初始状态的。&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;Many people are learning FPGA design, and here are some tips from an old hand.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;1、Try not to have large state machines, but rather smaller ones that communicate with one another.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;2、 It is recommended that Timequest is used to create timing constraints.  The benefit is, before it analyzes your timing, it will first analyze  your constraints and then inform you about unconstrained paths and  timing requirements that you haven't attended to.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;3、 Two things are worth noting with regards to clock constraints. First, as  much as possible avoid inserting logic into the clock path, otherwise  clock-to-clock skew may occur. Second, be very careful when gathering  data on both edges of a clock, otherwise your circuit might well end up  in lalaland.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;4、 The most critical point in constraining is not to over-constrain. There  are many pitfalls of doing so--increased compile time, utilizing more  chip resources than necessary, all resulting in other timing problems.  If you're concerned about your constraints, or if there are minute  differences in timing characteristics from device to device, try giving  more allowance in your constraints, but never over-constrain.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;5、 The purpose of IP is to fulfill a specific function, so we don't have to  know how a particular piece of IP works. The most important aspect of  an IP core is its interface because that's all you need to make it work  for you. Hence the most important section of an IP core datasheet is its  interface chapter.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;For  example, Altera's NIOS-II CPU is a somewhat large module which uses an  Avalon MM point-to-point interface. It differs from a "normal" PCI  interface in that it is a simultaneous multi-master interface.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;The  NIOS-II is directly invoked and used within the SOPC Builder software.  We don't need to know what signals it contains, for we won't be able to  see those internal interfaces unless there is a real need to do so. In  the NIOS-II, we have two Master Avalon MM interfaces, one of which is an  Instruction Master Port--used by the CPU to fetch instructions from  memory.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;The  other is the Data Master Port; simply put, this is used to connect  datapaths. For instance the data you'd like to read and the data you'd  like to save both use this datapath.&lt;br /&gt;These two ports can be linked to  the same internal storage. However, in that situation great care must  be taken to avoid overwriting your own instructions. But thinking about  it, what can we do with such an implementation? We can change our  software code depending on the situation.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;NIOS-II  has a third port that is used for Debug, plus some other interfaces  like the ITCM. We need to know that those interfaces exist but we don't  need to know the details until we actually use them. When that time  comes, we just need to consult the datasheet.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;6、 A system designer needs to be bold and daring, and not waste time on  details. You will find that many details are meaningless. This is not  saying that we don't have to look into the details; details are very  important, but they need to be given attention only when they are  utilized.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;7、 The use of IP brings with it many unpredictable issues and pain. Hence,  as much as possible, don't rely on assumptions to guess a module's  setup. Instead, adapt to the situation in order to deploy one's own  design. This kind of improvisation is essential for an FPGA user.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;8、 Consider the cache configuration. There are two types of  caches--instruction caches and data caches. Their size affect software  execution speed. But there's also no need to use too many resources for  caches. Just enough will do.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;9、 Configuring custom, user-defined instructions. This is the most valuable  type of setup. A user-defined instruction in this case does not refer  to a software macro or function, but to a piece of hardware. When the  CPU invokes this instruction, it is invoking a hardware module which in  embedded in the CPU. That's the fun of NIOS-II.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;10、 SOPC Builder is a platform within Quartus-II that's used to build,  develop and maintain systems. Even though we often use it as a  development environment for a NIOS-II embedded system, let's not limit  our thoughts about it to just a NIOS-II platform, but rather as a  platform for an entire system.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;11、 There are two kinds of Avalon interfaces, Avalon-MM and Avalon-ST. The  former is used to read/write data via addresses and is more used for  controlling logic. The latter is for point-to-point streaming data, more  for use inside high-speed filter modules. These two interfaces aren't  contradicting or mutually exclusive, and can co-exist in the same  module. There can even be multiple MM interfaces. As a point-to-point  interface, the Avalon interface can achieve high throughput. It is  fundamentally different from a PCI interface; think of a PCI interface  as a railway track--only one train can travel on it at a time. An Avalon  interface is like a highway--multiple cars can travel on it in two  different directions.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;12、 A rather special principle of FPGA design is that the world wasn't made  by you, so you must adapt to circumstances and not stubbornly stick to  your own intentions.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;13、 In an FPGA, apart from gate-to-gate delays which are fixed(clock  frequency), all other combinational circuit delays are uncertain. Just  remember this rule: all signals that aren't gated are unstable and  temporary.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;14、 Before generating a gated clock(using the result of some logic as a  clock to drive a gate), you'd better use the same primary clock signal  as an input to the gate that generates the gated clock signal. This way,  you get a clean clock signal.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;15、 Newer devices have embedded clock control modules. When you need to use  gated locks, try to use those modules as much as possible. That will  allow your clock to become stable.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;16、 If you have no choice but to use a logic circuit to lock a gate and your  device doesn't have specialized modules, then the best thing to do is  to use that clock to gate your gated lock signal. That way, glitches are  prevented and your clock becomes more stable.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;17、 Under normal conditions, the initial output values of gates at power-up  are low. But those can be changed. You can configure power-up values to  be high. This kind of integrated tool can do two things--either reverse  the output or use some sort of preset control (if it exists) to  configure the gate with the desired initial value.&lt;br /&gt;&lt;div style="height: 8pt; min-height: 8pt; padding: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;This  is not really necessary because you can actually use reset signals to  get the initial conditions that you want. If you really have to, there  are several ways to do it... (the rest is cut off)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-1424569205601227417?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/1424569205601227417/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/09/fpga-fpga-design-tips-followed-by.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/1424569205601227417'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/1424569205601227417'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/09/fpga-fpga-design-tips-followed-by.html' title='有关FPGA设计的小贴士 - FPGA design tips (简体中文 followed by English)'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-5232047583688215483</id><published>2010-08-25T08:02:00.000-07:00</published><updated>2010-08-25T08:02:40.304-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sigasi'/><category scheme='http://www.blogger.com/atom/ns#' term='startups'/><category scheme='http://www.blogger.com/atom/ns#' term='VHDL'/><title type='text'>Sigasi - a breath of fresh air for VHDL designers</title><content type='html'>A few months back I began noticing ads in my email window about a tool for VHDL design called, "Sigasi HDT". Being a hardware developer, I was naturally intrigued and looked at their &lt;a href="http://www.sigasi.com"&gt;website&lt;/a&gt;. The picture on the landing page soon had me chuckling, and as I read about Sigasi HDT and the philosophy behind it, I realized how apt it was to show a caveman staring in wondrous surprise at a computer screen.&lt;br /&gt;&lt;br /&gt;Programmers in the software industry generally have it better than hardware designers in terms of development IDEs, wouldn't you agree? The GUIs are easier to use and have features that have more to do with the actual code under development rather than just syntax highlighting. For example, tracing a variable in all its incarnations throughout a software project is made a lot easier with some of the better IDEs out there. Some help to simple avoid making common errors would be a boon.&lt;br /&gt;&lt;br /&gt;In the hardware world, I haven't heard of any IDE like that. Until Sigasi HDT came along, that is. In Sigasi's words, "It differs from other development tools in that it contains an ultra-fast VHDL parser and compiler that runs transparently in the background." There seems to be many &lt;a href="http://www.sigasi.com/featurelist"&gt;features of note&lt;/a&gt; with &lt;strong&gt;refactoring&lt;/strong&gt; a highlight. Refactoring, in my crudely-expressed terms, means cleaning up code, making it shorter and better.&lt;br /&gt;&lt;br /&gt;I'll be looking to dive into Sigasi HDT a little more, but it seems like the Sigasi folks understand the little details that would make life easier for hardware designers. In terms of logistics they have Sigasi HDT in the form of an Eclipse plugin so that it's easier for people to install Sigasi HDT into their current design environment. (We hope there will be a web version too, in future!)&lt;br /&gt;&lt;br /&gt;Through a series of Tweets and blogs, Kirvy and I had the pleasure of connecting and eventually speaking with Philippe, one of Sigasi's founders. We exchanged ideas and talked a little about the visions for our respective companies. It was nice to learn that they are now offering &lt;a href="http://www.sigasi.com/content/sigasi-announces-free-educational-licenses"&gt;free educational licenses&lt;/a&gt; to academia.&lt;br /&gt;&lt;br /&gt;It's a breath of fresh air to see products like this.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-5232047583688215483?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/5232047583688215483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/08/sigasi-breath-of-fresh-air-for-vhdl.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/5232047583688215483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/5232047583688215483'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/08/sigasi-breath-of-fresh-air-for-vhdl.html' title='Sigasi - a breath of fresh air for VHDL designers'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-7056386602428178827</id><published>2010-08-21T22:28:00.000-07:00</published><updated>2010-08-21T22:31:39.907-07:00</updated><title type='text'>How green is cloud computing?</title><content type='html'>One of the benefits touted by Cloud Computing advocates is that besides monetary gains through economies of scale, there are also benefits for the environment.&lt;br /&gt;&lt;br /&gt;Came across an article by Reuven Cohen, a cloud computing evangelist, that tries to quantify just &lt;a href="http://www.elasticvapor.com/2009/12/is-cloud-computing-actually.html"&gt;how green the cloud is&lt;/a&gt;. Data seems hard to obtain at this moment, it seems.&lt;br /&gt;&lt;br /&gt;One interesting anecdote is that apparently a city in Finland uses generated energy from data centers to heat homes.&lt;br /&gt;&lt;br /&gt;Intuitively there's a ring of truth but it's so very important to have numbers to back it up.&lt;br /&gt;James Urquhart, a CNET columnist, &lt;a href="http://news.cnet.com/8301-19413_3-10428065-240.html"&gt;commented&lt;/a&gt; on Cohen's article with some optimism.&lt;br /&gt;&lt;br /&gt;"So, in a sense, the 'greenness' of cloud computing is a kind of Schroedinger's box problem today, in which we won't know the actual savings to the environment until someone actually observes--or measures--it," he remarked.&lt;br /&gt;&lt;br /&gt;It would be great if Amazon or another cloud provider publishes a bit of data.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-7056386602428178827?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/7056386602428178827/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/08/how-green-is-cloud-computing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/7056386602428178827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/7056386602428178827'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/08/how-green-is-cloud-computing.html' title='How green is cloud computing?'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-2052213784674967627</id><published>2010-08-17T03:12:00.000-07:00</published><updated>2010-08-25T00:08:55.567-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='plunify'/><category scheme='http://www.blogger.com/atom/ns#' term='vision'/><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='open'/><category scheme='http://www.blogger.com/atom/ns#' term='FPGA'/><category scheme='http://www.blogger.com/atom/ns#' term='raison d&apos;etre'/><category scheme='http://www.blogger.com/atom/ns#' term='mission'/><title type='text'>Raison d'être</title><content type='html'>We were asked recently by investors, users and fellow community members questions that prompted some reflecting upon where Plunify is now, and where we are heading. Perhaps surprisingly, Kirvy and I haven't deviated much from those drawn-on-a-napkin plans that we concocted way back then. The napkins have long since disintegrated but the dream remains.&lt;br /&gt;&lt;br /&gt;Plunify is a startup in the FPGA ecosystem.&lt;br /&gt;&lt;br /&gt;Our project came about because there seemed to be too many disjointed steps for creating a working FPGA design.&lt;br /&gt;The situation is still pretty true today.&lt;br /&gt;IP, tools, compute resources, testing, debugging, optimization, evaluating devices, etc. make it hard for users to concentrate only on their designs. A couple of specific problems include:&lt;br /&gt;- too much time is spent on synthesis, place-and-route iterations&lt;br /&gt;- it is a hassle to install, maintain software and PC/server hardware&lt;br /&gt;- it is not easy to compare devices across FPGA vendors&lt;br /&gt;Not only are gaps present in technical areas such as benchmarking, business information like device prices and availability are often hard to come by.&lt;br /&gt;&lt;br /&gt;Plunify is an attempt to link these pieces up and to make programmable logic design as simple as possible. In a way, our vision is to become the "Salesforce for FPGA design".&lt;br /&gt;We are making an all-in-one platform to solve these problems, but as you know, small startups have to prioritize ; )&lt;br /&gt;For a start, the focus is on using Cloud Computing to enable basic, online FPGA design capabilities.&lt;br /&gt;Besides providing a platform that abstracts unnecessary details away from users, the cloud infrastructure also helps to speed up synthesis, place-and-route to often significant extents.&lt;br /&gt;In addition, the cloud enables us to adopt a vendor-agnostic interface so that users, especially new-comers to FPGA design, won't have such steep learning curves.&lt;br /&gt;&lt;br /&gt;Currently Plunify's beta platform supports Altera and Xilinx. Two Open Source simulators, Icarus Verilog and GHDL, are also available for simulation.&lt;br /&gt;Through a web interface, anyone can implement FPGA designs in the form of Verilog, VHDL, netlists and constraints files.&lt;br /&gt;Subsequently, users can compare results across different devices like &lt;a href="http://www.plunify.com/reports.php?jid=219"&gt;this example&lt;/a&gt; which was done for an Open Source processor core.&lt;br /&gt;Through carefully allocating Cloud Computing resources, we found that up to 75% of implementation time can be saved in some cases!&lt;br /&gt;&lt;br /&gt;User feedback has been quite rewarding so far.&lt;br /&gt;Just today, a group of students who weren't familiar about FPGA design apart from simulation, and who have no FPGA tools installed on their PCs managed to use &lt;a href="http://www.plunify.com"&gt;http://www.plunify.com&lt;/a&gt; to create a working FPGA design within an hour!&lt;br /&gt;What's really cool was that they managed to do this far from their engineering lab, and relied only on a USB modem throughout!&lt;br /&gt;&lt;br /&gt;Going forward, we are working hard to add features based on user feedback, and hope to get more traction. In particular, we'd like to automate things like constraints testing, which are currently both tedious and perhaps not so straightforward to figure out.&lt;br /&gt;&lt;br /&gt;Ultimately, we hope to contribute towards a more open FPGA community and simplify the use of FPGAs all over the world!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-2052213784674967627?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/2052213784674967627/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/08/raison-detre.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/2052213784674967627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/2052213784674967627'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/08/raison-detre.html' title='Raison d&apos;être'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-5948809023924894885</id><published>2010-07-08T22:33:00.000-07:00</published><updated>2010-08-25T00:10:19.778-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='newbie'/><category scheme='http://www.blogger.com/atom/ns#' term='simulation'/><category scheme='http://www.blogger.com/atom/ns#' term='new to FPGA'/><category scheme='http://www.blogger.com/atom/ns#' term='beginner'/><title type='text'>New to FPGAs / logic simulation?</title><content type='html'>&lt;h3&gt;A Brief Plunify Simulation Tutorial&lt;/h3&gt;&lt;br /&gt;The following step-by-step guide to simulation is aimed at users new to Plunify or to FPGA design in general.&lt;br /&gt;&lt;br /&gt;After a design is described in Verilog / VHDL, usually the next step is to run a simulation in order to verify if the general functionality is correct. There are many types of simulations and simulators.&lt;br /&gt;&lt;br /&gt;Plunify can be used to simulate a Verilog / VHDL design, using the Icarus Verilog and GHDL simulators. The following example uses a simple counter in Verilog, provided by default when you register with us.&lt;br /&gt;&lt;style type="text/css"&gt;.nobrtable br { display: none }&lt;/style&gt;&lt;br /&gt;&lt;div class="nobrtable"&gt;&lt;br /&gt;&lt;table border="0"&gt;&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;p&gt;First, log on at &lt;a href="http://www.plunify.com"&gt;www.plunify.com&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The Project Manager's initial page appears.&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_9wZsv4HY9h0/TDa48GIvtFI/AAAAAAAAACQ/oItsManlYy0/s1600/Screen+shot+2010-07-09+at+1.42.47+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 175px;" src="http://4.bp.blogspot.com/_9wZsv4HY9h0/TDa48GIvtFI/AAAAAAAAACQ/oItsManlYy0/s400/Screen+shot+2010-07-09+at+1.42.47+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491780138203853906" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Your home directory and its contents are displayed on the left.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Click &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDa6m4PFbFI/AAAAAAAAACY/cZ9prK4FiO8/s1600/Screen+shot+2010-07-09+at+1.58.20+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 76px; height: 19px;" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDa6m4PFbFI/AAAAAAAAACY/cZ9prK4FiO8/s400/Screen+shot+2010-07-09+at+1.58.20+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491781972718349394" /&gt;&lt;/a&gt; and navigate to /Home/Sample_Project/Simulation/Verilog/counter/&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;Click the "Simulate" tab.&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_9wZsv4HY9h0/TDa9j5EmDuI/AAAAAAAAACo/86MypE-582M/s1600/Screen+shot+2010-07-09+at+1.56.08+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 203px;" src="http://2.bp.blogspot.com/_9wZsv4HY9h0/TDa9j5EmDuI/AAAAAAAAACo/86MypE-582M/s400/Screen+shot+2010-07-09+at+1.56.08+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491785219938062050" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Select "Verilog (Icarus Verilog) as your simulator.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Select your Verilog source files using the built-in file explorer.&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_9wZsv4HY9h0/TDa9DHJ13zI/AAAAAAAAACg/238XI0q7Qtg/s1600/Screen+shot+2010-07-09+at+2.08.21+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 128px; height: 55px;" src="http://2.bp.blogspot.com/_9wZsv4HY9h0/TDa9DHJ13zI/AAAAAAAAACg/238XI0q7Qtg/s400/Screen+shot+2010-07-09+at+2.08.21+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491784656782483250" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Click "Next".&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;Click the "Simulate" button.&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDa-hb_nqkI/AAAAAAAAACw/DVaozyl4oiM/s1600/Screen+shot+2010-07-09+at+2.14.06+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 143px;" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDa-hb_nqkI/AAAAAAAAACw/DVaozyl4oiM/s400/Screen+shot+2010-07-09+at+2.14.06+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491786277284457026" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;(In this case, we don't have to specify a "Commandfile", which is a batch file that Icarus Verilog uses.)&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;At this point, your simulation has started.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Click "Close", followed by the "Reports" tab.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Your simulation will be displayed under "Pending Jobs".&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_9wZsv4HY9h0/TDa_lGvqCwI/AAAAAAAAAC4/pb-2yv9y8mg/s1600/Screen+shot+2010-07-09+at+2.19.00+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 112px;" src="http://3.bp.blogspot.com/_9wZsv4HY9h0/TDa_lGvqCwI/AAAAAAAAAC4/pb-2yv9y8mg/s400/Screen+shot+2010-07-09+at+2.19.00+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491787439811463938" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;When the simulation completes, its job entry vanishes from "Pending Jobs" and appear in "Completed Jobs".&lt;/p&gt;&lt;br /&gt;&lt;p&gt;A blue notification message also pops out near the top.&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_9wZsv4HY9h0/TDbCE1k4YyI/AAAAAAAAADA/iFiBnTX2_Wc/s1600/Screen+shot+2010-07-09+at+2.30.00+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 123px;" src="http://4.bp.blogspot.com/_9wZsv4HY9h0/TDbCE1k4YyI/AAAAAAAAADA/iFiBnTX2_Wc/s400/Screen+shot+2010-07-09+at+2.30.00+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491790183981933346" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;To view results, click the above message (You will also be sent a notification email).&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;Click "View" beside your job entry in "Completed Jobs"&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDbDeaZfMqI/AAAAAAAAADI/5B3g6rwCtKI/s1600/Screen+shot+2010-07-09+at+2.35.12+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 116px;" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDbDeaZfMqI/AAAAAAAAADI/5B3g6rwCtKI/s400/Screen+shot+2010-07-09+at+2.35.12+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491791722874614434" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;Two, potentially three types of results exist:&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_9wZsv4HY9h0/TDbD3vobvHI/AAAAAAAAADQ/cCzgbXQq6Is/s1600/Screen+shot+2010-07-09+at+2.35.47+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 187px;" src="http://2.bp.blogspot.com/_9wZsv4HY9h0/TDbD3vobvHI/AAAAAAAAADQ/cCzgbXQq6Is/s400/Screen+shot+2010-07-09+at+2.35.47+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491792158071176306" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Compilation&lt;/li&gt;&lt;li&gt;Run, and&lt;/li&gt;&lt;li&gt;Waveform (if enabled in source files)&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Click "View" beside each result to examine them. These files can also be downloaded.&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;To view a simulation waveform, click &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDbJMUsfnGI/AAAAAAAAADg/cmOHBa2b0Os/s1600/Screen+shot+2010-07-09+at+3.00.36+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 65px; height: 35px;" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDbJMUsfnGI/AAAAAAAAADg/cmOHBa2b0Os/s400/Screen+shot+2010-07-09+at+3.00.36+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491798009175841890" /&gt;&lt;/a&gt; beside the waveform file.&lt;/p&gt;&lt;br /&gt;The built-in waveform viewer pops up in a new tab / window.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDbJb_yZp7I/AAAAAAAAADo/QT6Y_tONfvE/s1600/Screen+shot+2010-07-09+at+2.59.41+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 104px;" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDbJb_yZp7I/AAAAAAAAADo/QT6Y_tONfvE/s400/Screen+shot+2010-07-09+at+2.59.41+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491798278441379762" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;Display relevant signals by selecting them and clicking the "Display Waveform" button.&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDbKFG7MaLI/AAAAAAAAADw/S4Ddn4NIoo0/s1600/Screen+shot+2010-07-09+at+3.04.25+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 156px; height: 194px;" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/TDbKFG7MaLI/AAAAAAAAADw/S4Ddn4NIoo0/s400/Screen+shot+2010-07-09+at+3.04.25+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491798984731945138" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_9wZsv4HY9h0/TDbKdMJj5WI/AAAAAAAAAD4/I5MZzTadeVQ/s1600/Screen+shot+2010-07-09+at+3.05.59+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 259px;" src="http://4.bp.blogspot.com/_9wZsv4HY9h0/TDbKdMJj5WI/AAAAAAAAAD4/I5MZzTadeVQ/s400/Screen+shot+2010-07-09+at+3.05.59+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491799398451242338" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Use the scroll and zoom buttons to examine your waveform and debug your simulation.&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;But of course, simulation is a repetitive process, at least until your design works.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Make changes to your source files and upload them.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Run the simulation again via the above steps, or use the &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_9wZsv4HY9h0/TDbG1PK53EI/AAAAAAAAADY/mOoZPZBtPnU/s1600/Screen+shot+2010-07-09+at+2.50.34+PM.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 136px; height: 35px;" src="http://2.bp.blogspot.com/_9wZsv4HY9h0/TDbG1PK53EI/AAAAAAAAADY/mOoZPZBtPnU/s400/Screen+shot+2010-07-09+at+2.50.34+PM.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5491795413532531778" /&gt;&lt;/a&gt; button.&lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;This concludes our brief simulation tutorial.&lt;br /&gt;&lt;br /&gt;Feel free to try the other examples as well, which include the same Verilog counter but with an Icarus Verilog command file, and a VHDL adder example that uses the GHDL simulator.&lt;br /&gt;&lt;br /&gt;Questions / comments / kudos / hate mail can be sent to &lt;a href="mailto:tellus@plunify.com"&gt;tellus@plunify.com&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-5948809023924894885?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/5948809023924894885/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/07/new-to-fpgas-logic-simulation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/5948809023924894885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/5948809023924894885'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/07/new-to-fpgas-logic-simulation.html' title='New to FPGAs / logic simulation?'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_9wZsv4HY9h0/TDa48GIvtFI/AAAAAAAAACQ/oItsManlYy0/s72-c/Screen+shot+2010-07-09+at+1.42.47+PM.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-524247834960719863</id><published>2010-06-30T19:02:00.001-07:00</published><updated>2010-08-25T00:10:40.124-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='embedded'/><category scheme='http://www.blogger.com/atom/ns#' term='DSP'/><category scheme='http://www.blogger.com/atom/ns#' term='FPGA custom blocks'/><title type='text'>From DSPs in FPGAs to overall trends in the FPGA world</title><content type='html'>Came across an interesting &lt;a href="http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&amp;discussionID=22990278&amp;gid=54049&amp;trk=EML_anet_qa_ttle-0Ot79xs2RVr6JBpnsJt7dBpSBA"&gt;discussion on a LinkedIn group&lt;/a&gt; regarding first, DSPs in FPGAs, followed by observations on trends for future FPGAs.&lt;br /&gt;Highlights:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;How to accelerate DSP applications in FPGAs so that ASIC implementations will fall behind&lt;/li&gt;&lt;li&gt;Custom blocks in FPGAs and how they are positioned to capture more designs&lt;/li&gt;&lt;li&gt;Motivations of FPGA makers for putting certain architectural features in future devices&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;One poster mentioned that FPGA makers are not so keen on promoting embedded blocks in FPGAs because doing so devalues the programmable side of the technology--the FPGA fabric.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-524247834960719863?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/524247834960719863/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/06/from-dsps-in-fpgas-to-overall-trends-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/524247834960719863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/524247834960719863'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/06/from-dsps-in-fpgas-to-overall-trends-in.html' title='From DSPs in FPGAs to overall trends in the FPGA world'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-7713621098627219277</id><published>2010-06-24T04:29:00.000-07:00</published><updated>2010-08-25T00:11:03.871-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='EDA'/><category scheme='http://www.blogger.com/atom/ns#' term='solutions'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='FPGA'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><category scheme='http://www.blogger.com/atom/ns#' term='issues'/><title type='text'>The Growing Tide: Hardware Design in the Cloud</title><content type='html'>We feel like surfers in an hitherto undiscovered surfing paradise, believing that the big waves(&lt;b&gt;FPGA Design in the Cloud&lt;/b&gt;) will come and working hard in preparation (developing Plunify's platform) for them. When the waves come, we just  have to time it right, paddle like crazy and stay in the sweet spot.&lt;br /&gt;But we have to create conditions for the waves to come as well.&lt;br /&gt;&lt;br /&gt;Our success depends on it.&lt;br /&gt;&lt;br /&gt;Luckily since we started working on Plunify, we could feel the waves coming, and they might well form a tsunami.&lt;br /&gt;&lt;br /&gt;News from the recent 47th Design Automation Conference(DAC): Even the EDA world is looking to the &lt;a href=" http://www.eetimes.com/news/semi/showArticle.jhtml?articleID=225700435"&gt;cloud for solutions&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The cloud is not new, of course. It's merely a more mature form of the server farms of yore.&lt;br /&gt;&lt;br /&gt;What's different is how companies, especially startups like us, are springing up to provide applications as services.&lt;br /&gt;&lt;br /&gt;A few main obstacles to user adoption have been identified; here they are (Source: &lt;a href="http://www.eetimes.com/showArticle.jhtml?articleID=221601342"&gt;EETimes&lt;/a&gt;) and here's how we are solving these issues for the FPGA world:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Will the design be stored locally or at the vendor's site?&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Trust involves both human and technical factors. On the technical side, we encrypt transmissions and set strict user permissions on data stored on our servers. We even delete source files after we're done processing.&lt;br /&gt;&lt;br /&gt;But that's not enough, is it?&lt;br /&gt;&lt;br /&gt;We let clients store source files locally on their PCs, and just access the tools remotely. Speed and scalability are tradeoffs in that case, but IP security is assured.&lt;/i&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;How does the application handle authorized--and unauthorized--access to the design?&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Protection occurs at several levels: the OS, the filesystem and at the web frontend, in the form of passwords, SSH and SSL  authentication.&lt;br /&gt;&lt;br /&gt;A friend who works in the military doing IT security is coming over to hack into our system. We shudder at the holes he is going to uncover, but are looking forward to patching them up!&lt;/i&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;How often will tools be updated, and will users receive enough advance notice?&lt;br /&gt;&lt;br /&gt;&lt;i&gt;This is an issue that bugs many FPGA designs--namely the tool version changes and a working design breaks.&lt;br /&gt;&lt;br /&gt;We keep all supported versions available and track which designs work on which tool versions, so users should never get into that situation with Plunify.&lt;/i&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Does the hosting provider have enough bandwidth to support very large files?&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Bandwidth was part of the reason why we use Amazon AWS as our cloud provider.&lt;br /&gt;&lt;br /&gt;To be honest, we haven't really felt any bandwidth pressure yet. The system seems to be handling itself quite nicely.&lt;/i&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Things are slightly different between FPGA and IC design, even though processes are similar.&lt;br /&gt;&lt;br /&gt;It is great to hear that the industry is responding favorably to what we're doing. But the proof of the pudding still lies in the eating--how users feel about our solutions to the problems above. Or will we uncover new user concerns?&lt;br /&gt;&lt;br /&gt;That's part of the fun, and the challenges.&lt;br /&gt;&lt;br /&gt;OK, back to work.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-7713621098627219277?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/7713621098627219277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/06/growing-tide-hardware-design-in-cloud.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/7713621098627219277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/7713621098627219277'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/06/growing-tide-hardware-design-in-cloud.html' title='The Growing Tide: Hardware Design in the Cloud'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-1769651614606844760</id><published>2010-05-20T14:40:00.000-07:00</published><updated>2010-06-20T23:14:56.921-07:00</updated><title type='text'>How important is the time taken for synthesis, place-and-route?</title><content type='html'>Recently, one of us posted a question on a discussion forum about how important synthesis, place-and-route time to developers?&lt;br /&gt;&lt;br /&gt;There were quite a few responses; most people agreed that as FPGAs and FPGA designs get more and more complex, implementation time becomes a larger portion of the development budget or project timeline.&lt;br /&gt;&lt;br /&gt;As silicon process technology gets smaller, increasing the number of gates the software tools have to route for FPGAs, makers also add more complex blocks in the FPGAs. As FPGAs become more complex, the time spent to design, implement and debug increases. One needs more iterations to complete a design--hence how fast the tools crunch one's design directly affects when the design will be completed.&lt;br /&gt;&lt;br /&gt;Some respondents said that there are just too many other variables that are equally important.&lt;br /&gt;Which we take to mean, there are many areas for improvement in the FPGA world!&lt;br /&gt;&lt;br /&gt;Others proposed a higher-level view: that we should take a step back and focus on improving design methodology instead.&lt;br /&gt;That's where more gains could potentially be made.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&amp;gid=56713&amp;discussionID=18275681&amp;sik=1277099711421&amp;trk=ug_qa_q&amp;goback=.ana_56713_1277099711421_3_2"&gt;Full discussion&lt;/a&gt; on LinkedIn.&lt;br /&gt;&lt;br /&gt;What do you think?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-1769651614606844760?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/1769651614606844760/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/05/how-important-is-time-taken-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/1769651614606844760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/1769651614606844760'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/05/how-important-is-time-taken-for.html' title='How important is the time taken for synthesis, place-and-route?'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-7461719018695794701</id><published>2010-04-21T21:09:00.001-07:00</published><updated>2010-08-25T00:09:58.974-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='newbie'/><category scheme='http://www.blogger.com/atom/ns#' term='starting FPGA design'/><category scheme='http://www.blogger.com/atom/ns#' term='beginner'/><title type='text'>Starting an FPGA design</title><content type='html'>There are certainly many ways to start an FPGA design; for example one can:&lt;ul&gt;&lt;li&gt;Open up an editor and start coding&lt;/li&gt;&lt;li&gt;Look for, duplicate and modify an existing reference design&lt;/li&gt;&lt;/ul&gt;Which approach one chooses is probably a question of deadlines and personal preference.&lt;br /&gt;&lt;br /&gt;Our engineers, for example, learned to design by coding so if given the time, they would rather write it out in Verilog/VHDL while referring to reference designs if any exist.&lt;br /&gt;&lt;br /&gt;Coding something at least once and making that work is likely the most effective way of "learning by doing" in our opinion. Should you be blessed with the luxury of time and curiosity, there are plenty of resources out there to help.&lt;br /&gt;&lt;br /&gt;First, pick a language from the current de-facto standards: &lt;a href="http://en.wikipedia.org/wiki/Verilog"&gt;Verilog&lt;/a&gt; or &lt;a href="http://en.wikipedia.org/wiki/VHDL"&gt;VHDL&lt;/a&gt;. &lt;a href="http://www.fpga4fun.com/HDL%20tutorials.html"&gt;References&lt;/a&gt; abound for these two languages and they have been in active use for decades. It seems that VHDL is more popular in Europe and in military/aerospace applications. Verilog accounts for the most of the "rest".&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.systemverilog.org/overview/overview.html"&gt;SystemVerilog&lt;/a&gt; and &lt;a href="http://www.systemc.org/community/about_systemc/"&gt;SystemC&lt;/a&gt; have been on the fringes for a while now, and are seeing increasing use. However their adoption seems to be hampered by a lack of robust and readily-available tool support.&lt;br /&gt;&lt;br /&gt;Important things to look out for while coding include:&lt;ul&gt;&lt;li&gt;Sequential(anything that remembers state) and Combinational logic&lt;/li&gt;&lt;li&gt;Blocking vs Non-blocking statements (see &lt;a href="http://www.asic-world.com/tidbits/blocking.html"&gt;quick explanation&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;Clocking--see &lt;a href="www.fpga-faq.com/FAQ_Pages/prototyping.pdf "&gt;here&lt;/a&gt; for a discussion on differences in clock-gating between ASICs and FPGAs&lt;/li&gt;&lt;/ul&gt;Having an already working reference is a boon in almost all(except when the reference design is too convoluted to understand!) cases. Finding a suitable one might involve trawling FPGA vendors' and design services' and tool vendors' websites for "application notes" or using specialized &lt;a href="http://www.plunify.com/adstart.php"&gt;search engines&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Once a suitable one that fulfills one's end-application is found, here are some considerations:&lt;ul&gt;&lt;li&gt;Is it available in source code or at least, can it be easily modified?&lt;/li&gt;&lt;li&gt;What application software/hardware is required to test it - boards, drivers, end-applications?&lt;/li&gt;&lt;li&gt;Which software/hardware tools are needed to run it and produce the same outputs as advertised - FPGA tools, simulators?&lt;/li&gt;&lt;/ul&gt;The above factors likely dictate if this reference design is going to be useful, impossible to replicate or too limiting.&lt;br /&gt;&lt;br /&gt;Whether the design is created from scratch or from an existing reference, the typical steps in the development process are:&lt;ol&gt;&lt;li&gt;Functional simulation to prove that your logic works(no going into timing yet!)&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Shameless plug&lt;/i&gt;: Our &lt;a href="http://www.plunify.com/register.php"&gt;online simulation platform&lt;/a&gt; using industry-grade simulation tools can help you do functional simulations with minimal hassle!&lt;/li&gt;&lt;li&gt;If functional simulation passes, time to implement your design on FPGA software&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Input constraints such as clock frequencies and pin locations so that the FPGA software can try to compile your design for your desired speed and IO(e.g. connect the Write-Enable in your code module to the physical Write-Enable signal on your eventual hardware test board) behavior.&lt;br /&gt;&lt;br /&gt;Here is where one gets &lt;i&gt;intimately familiar&lt;/i&gt; with the FPGA software :)&lt;/li&gt;&lt;li&gt;Typically one also picks a specific FPGA/CPLD device here--which always seems &lt;b&gt;strange&lt;/b&gt; because at this stage it is too early to commit to a specific device in our opinion. Kinda like limiting yourself to one tree before understanding the entire forest of possibilities.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Run the FPGA software to put your design through &lt;a href="http://www.fpga4fun.com/FPGAsoftware5.html"&gt;synthesis, place-and-route&lt;/a&gt;, timing analysis and finally(if all goes well), programming file generation.&lt;/li&gt;&lt;li&gt;If failures occur,&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Examine error logs&lt;/li&gt;&lt;li&gt;Can't meet target frequency? Too long a datapath? Software can't wrap its head around a certain code construct? -&gt; Change source code&lt;/li&gt;&lt;li&gt;Constraints are too strict? -&gt; Reduce target frequency or move IO pins or relocate logic blocks&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Repeat&lt;/li&gt;&lt;/ol&gt;If at the end, you get a working design, all the above was worth your efforts!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-7461719018695794701?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/7461719018695794701/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/04/starting-fpga-design.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/7461719018695794701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/7461719018695794701'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/04/starting-fpga-design.html' title='Starting an FPGA design'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-4493267269383077456</id><published>2010-04-04T09:31:00.000-07:00</published><updated>2010-04-04T09:35:22.628-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open-source FPGA hardware'/><title type='text'>Open source FPGAs?</title><content type='html'>The phrase, "reconfigurable computing," seems to bring to mind flexibility and freedom of choice.&lt;br /&gt;It seems natural that some of this flexibility should mean that developers will have all the information to target whichever programmable logic device that is best for their designs.&lt;br /&gt;&lt;br /&gt;In the FPGA world, since understanding the structure and format of bitstreams and how they are formed could mean exposing intimate details of the device to the world, from a chip manufacturer's point of view, divulging less is understandably more desirable.&lt;br /&gt;&lt;br /&gt;Unfortunately it also means less people can work on improving software tools for implementation--map, floorplanning, place-and-route, bitstream generation.&lt;br /&gt;There are few open standards for apples-to-apples comparisons as well.&lt;br /&gt;&lt;br /&gt;It is almost like the software industry of the 1960s-70s, when big companies dominated the scene with proprietary formats and tools.&lt;br /&gt;- Compilers were hard to write then, but they became easier and eventually standard, open source ones like the GNU C Compiler came along&lt;br /&gt;- Software was mostly written in-house and few believed it could be out-sourced&lt;br /&gt;- Personal Computers and sharing of IP were almost unheard of&lt;br /&gt;&lt;br /&gt;One could argue if the software industry has evolved for the better or for worse since then, but I certainly enjoy being able to write a program on my laptop, compile it and run it right away without so much as a simple installation of Linux and gcc. Come to think of it, Linux would probably have not become what it is today.&lt;br /&gt;&lt;br /&gt;Perhaps one day every piece of electronics would really have a generic programmable logic device and one could just write a program to run on it without having to download and install proprietary tools, search too hard for suitable IP(More of sites like &lt;a href="http://www.opencores.org"&gt;http://www.opencores.org&lt;/a&gt; and &lt;a href="http://www.rmdir.de/~michael/xilinx/"&gt;http://www.rmdir.de/~michael/xilinx/&lt;/a&gt; please) and learn too many different tool interfaces.&lt;br /&gt;&lt;br /&gt;Without going too much into the merits and demerits of open source software / hardware, I tend to think that going down the path of open sourcing FPGA architecture and software would lead to greater engineering benefits. For business reasons, more clarity may not be a good thing perhaps, or at least business models would have to be tweaked for many companies who are used to the current models in the FPGA industry.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-4493267269383077456?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/4493267269383077456/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/04/open-source-fpgas.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4493267269383077456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4493267269383077456'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/04/open-source-fpgas.html' title='Open source FPGAs?'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-8058996936480107529</id><published>2010-03-15T10:13:00.000-07:00</published><updated>2010-03-29T03:24:00.671-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='competition'/><category scheme='http://www.blogger.com/atom/ns#' term='PLD matchmaking'/><category scheme='http://www.blogger.com/atom/ns#' term='market leader'/><category scheme='http://www.blogger.com/atom/ns#' term='simulation'/><title type='text'>How not to be crushed like an ant</title><content type='html'>Comments from VCs and senior industry people whom we've talked to resonate constantly in our minds. Especially those which express concern over how we're going to sell our simulation and PLD-matching services.&lt;br /&gt;&lt;br /&gt;For example, our goal of providing accurate technical information to simplify the process of FPGA/CPLD selection for any design might not sound too pleasing to chip manufacturers, because heck, sellers may want to sell the highest-margin products, not necessarily the ones that suit customers best. From a business perspective, this is only natural.&lt;br /&gt;&lt;br /&gt;But from the perspective of helping manufacturers sell chips by making programmable logic design easier, we think we're providing value to both PLD makers and users alike. Guess it depends on who you talk to. Looking at examples in the PC and automotive industry, it does seem like having more information spurs innovation and choices, resulting in higher efficiencies for everyone.&lt;br /&gt;&lt;br /&gt;Of course, it is rather premature to be talking about annoying chip makers when our product is not even close to launch! However, it does have implications on how we market and sell. For example, various sales channels exist for PL design services and tools. We could perhaps bundle our services with a larger company's distribution channels and be part of a more complete package of, say, boards, test equipment, etc. That will immediately grant us a large number of customer leads. If our partners think that our services will lead to lower sales for any of their products, our unions won't last very long, would it? :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-8058996936480107529?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/8058996936480107529/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/03/how-not-to-be-crushed-like-ant.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/8058996936480107529'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/8058996936480107529'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/03/how-not-to-be-crushed-like-ant.html' title='How not to be crushed like an ant'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-7748864620952229271</id><published>2010-02-15T16:49:00.000-08:00</published><updated>2010-03-29T02:57:31.386-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Onsen'/><category scheme='http://www.blogger.com/atom/ns#' term='FPGA'/><category scheme='http://www.blogger.com/atom/ns#' term='simulatoin'/><category scheme='http://www.blogger.com/atom/ns#' term='CPLD'/><title type='text'>Beta-testing, (another) New Year, starting work on Onsen</title><content type='html'>Another round of holidays is upon us--today being the 2nd day of the Chinese New Year, a super long weekend in Singapore.&lt;br /&gt;&lt;br /&gt;With little distinction of working days versus rest-days, we plod along as usual.&lt;br /&gt;&lt;br /&gt;On the simulation side of things, we have been extremely blessed with expert beta-testers--friends and former colleagues who have devoted their free time to breaking our simulation platform. In the beginning, it was like slicing a hot knife through butter. (Despite our best efforts, nothing beats having a user to test one's code) After a couple of "Oh..." moments, the system is taking shape nicely.&lt;br /&gt;&lt;br /&gt;Now we say with greater confidence that you should be able to log in, upload your HDL code, and run a simulation successfully. At no charge, of course.&lt;br /&gt;&lt;br /&gt;Next, our online "Match-your-design-with-a-PLD" attempt; As of now, we have several hundred FPGAs and CPLDs in our servers, crunching happily on small designs that we downloaded off the web. Some tests error out quickly because of parameters that we neglected, whereas some run to completion successfully. It is too premature to be of interest--not even alpha, but things look encouraging.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-7748864620952229271?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/7748864620952229271/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/02/beta-testing-another-new-year-starting.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/7748864620952229271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/7748864620952229271'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/02/beta-testing-another-new-year-starting.html' title='Beta-testing, (another) New Year, starting work on Onsen'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-28145407894662347</id><published>2010-01-15T02:41:00.000-08:00</published><updated>2010-03-29T02:48:58.983-07:00</updated><title type='text'>Very happy with the new office</title><content type='html'>Amidst a flurry of New Year celebrations, we moved into our new home in Bugis, an area known in the 1950s-80s for transgenders as well as for ethnic shopping. Nowadays, it's a hodge-podge of office buildings, shopping malls and eateries.&lt;br /&gt;&lt;br /&gt;Compared to our previous office, the new one is light-years ahead in terms of furniture and facilities. Location-wise, it's also very convenient as no transfers are needed.&lt;br /&gt;&lt;br /&gt;Each of us has a big table and extremely comfortable chairs--compliments of our landlord so we're happy. The upcoming weeks will still be spent in development and naturally, exploring the surrounding eateries ;)&lt;br /&gt;&lt;br /&gt;Feature-wise, we're just getting into stride with the online simulation and will resume work on the automated FPGA implementation next week.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-28145407894662347?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/28145407894662347/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2010/01/very-happy-with-new-office.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/28145407894662347'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/28145407894662347'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2010/01/very-happy-with-new-office.html' title='Very happy with the new office'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-4806250061085251792</id><published>2009-12-23T19:32:00.000-08:00</published><updated>2009-12-23T19:33:58.989-08:00</updated><title type='text'>Merry Christmas and Happy 2010!</title><content type='html'>To our families, friends: A big thank you for your support and encouragement!&lt;br /&gt;To other entrepreneurs: All the best and may all our endeavors bear fruit!&lt;br /&gt;To everyone: Merry Christmas and Happy New Year!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-4806250061085251792?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/4806250061085251792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2009/12/merry-christmas-and-happy-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4806250061085251792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4806250061085251792'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2009/12/merry-christmas-and-happy-2010.html' title='Merry Christmas and Happy 2010!'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-4571252335936446890</id><published>2009-11-15T22:41:00.000-08:00</published><updated>2009-12-23T19:32:08.939-08:00</updated><title type='text'>Office space</title><content type='html'>We had the good fortune of having an office before we registered Plunify--thanks to one of the founders who was already running his own setup. So the rest of the folks just pulled up extra chairs to his existing table and hit the ground running.&lt;br /&gt;&lt;br /&gt;The building: a remodeled pre-war (the 2nd) police barracks with no elevators, dingy bathrooms and steep, narrow stairs. But the location was superb--smack in the middle of bustling Chinatown with convenient access to everywhere else.&lt;br /&gt;&lt;br /&gt;No bugs (creepy crawlies) or hauntings (although huge buddha statues rest in one of the side stairwells) but the rent was a bit steep (~$3/sq ft) and when there's a thunderstorm, power failures are more common than not. 24/7 access works out great for all of us. One other funny thing is that our Singtel business line would go out at least a few times a month, often around 4pm. We speculate that either someone was tapping our connection or perhaps Singtel changes IP addresses at that time and our aged modem can't handle it.&lt;br /&gt;&lt;br /&gt;Anyway, the time came when the shared office started feeling too cramped, so we embarked on a search for a new home.&lt;br /&gt;&lt;br /&gt;Why do you guys not work from someone's home or separately, you might ask; well, here's our take:&lt;br /&gt;&lt;br /&gt;Pros of working together in the same room:&lt;br /&gt;- Working physically next to one another&lt;br /&gt;- Keeps work away from home&lt;br /&gt;  - Psychologically&lt;br /&gt;  - Logistically&lt;br /&gt;Some elements of software agility support our preferences too.&lt;br /&gt;&lt;br /&gt;Cons:&lt;br /&gt;- Rental expenses&lt;br /&gt;&lt;br /&gt;Criteria for the new office:&lt;br /&gt;Location:&lt;br /&gt;- Convenient for employees with cars and those without&lt;br /&gt;  - MRT, buses&lt;br /&gt;In tropical weather, walking more than 10 minutes to get to the office often means a choice between being drenched in perspiration or in rain. Good thing nobody has to wear a suit to work!&lt;br /&gt;- Proximity to customers&lt;br /&gt;  - Good thing local customers are very accessible due to both the size of Singapore and her efficient transportation network&lt;br /&gt;  - Most customers are abroad so all it takes is an air-ticket and some advance arrangements&lt;br /&gt;&lt;br /&gt;After a couple of days of looking around and answering ads, we shortlisted a couple of options, but were not 100% happy with all of them.&lt;br /&gt;- cheapest one of all--a room on the 2nd floor of an old shophouse; no natural light, old carpeting, not very appealing&lt;br /&gt;- next in terms of decreasing affordability--an office in an industrial complex; inconvenient to get to, need to buy furniture&lt;br /&gt;- next, a service office close to the city center--no natural light, space was smaller than advertised&lt;br /&gt;&lt;br /&gt;In the end, something came out of the blue. We're still pinching ourselves on this one. A couple of kind entrepreneurs we chanced across generously offered us very affordable office space complete with facilities and use of office equipment!&lt;br /&gt;&lt;br /&gt;Needless to say, we thankfully accepted and now we look forward to moving to the new place on Jan 4th. May 2010 get better and better!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-4571252335936446890?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/4571252335936446890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2009/11/office-space.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4571252335936446890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4571252335936446890'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2009/11/office-space.html' title='Office space'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-199185029371248175</id><published>2009-11-02T01:07:00.001-08:00</published><updated>2010-03-29T03:25:46.006-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Customers'/><title type='text'>Meeting with prospects</title><content type='html'>Last week we had an initial meeting with a customer--details are hush-hush at this point of course but suffice to say they have impressive educational/research facilities. They kindly bought us lunch in an opulent banquet room although I have to say that both of us were too busy listening and making sure that pieces of food were not stuck in our teeth while we were talking, to really enjoy the food! Pity, really, because it was a sumptuous spread.&lt;br /&gt;&lt;br /&gt;After the pleasantries, we explained who we are, what we do and gave a demo of the current simulation platform--a canned demo where Verilog source code for a simple counter was compiled via our web interface and server, and then the resultant waveform files debugged via the web browser as well. Our audience seemed reasonably pleased and asked for more details, which was very encouraging for us to say the least.&lt;br /&gt;&lt;br /&gt;The questions we received included:&lt;br /&gt;- Does your tool have the same feature-set as the tools from C and S (major industry players)&lt;br /&gt;- How can we provide a complete learning experience for our users?&lt;br /&gt;- Will our IT staff be able to integrate your platform with relative ease?&lt;br /&gt;... &lt;br /&gt;etc.&lt;br /&gt;&lt;br /&gt;It may sound silly, but from the meeting and from subsequent discussions with other prospects, I started to get a feel for the dynamics at a customer's site. Besides identifying the right people to pitch to, and cultivating the ability to sincerely listen, I realized that I have to put each different individual's reaction and requests in the context of their roles in the customer's organization. For example, a relatively junior engineer is likely to care more about the ease of use rather than how a solution scales. A person who works within the boundaries of his/her job description is likely to be receptive only to points that fall within that description and not to "How can things be improved beyond the scope"-type of suggestions.&lt;br /&gt;&lt;br /&gt;With these in mind, we're preparing proposals for the next round of interaction. It may be a slow process but already it is pretty rewarding!&lt;br /&gt;&lt;br /&gt;Of course, at a demo, be sure to check with the coordinators if they have the necessary equipment. For us, fortunately we had everything so all we needed was a wireless network connection. Thank goodness for the free (as in $0) Wireless@SG!&lt;br /&gt;&lt;br /&gt;All these would not have been possible without YC's kind introduction to the powers-that-be, of course. Thanks again, YC!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-199185029371248175?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/199185029371248175/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2009/11/meeting-with-prospects.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/199185029371248175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/199185029371248175'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2009/11/meeting-with-prospects.html' title='Meeting with prospects'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-3491454536596350518</id><published>2009-09-14T18:34:00.000-07:00</published><updated>2011-08-18T02:48:24.380-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='registering a company'/><category scheme='http://www.blogger.com/atom/ns#' term='Incorporation'/><title type='text'>Incorporating in Singapore</title><content type='html'>Previously we went through the necessary step of making Plunify a legal business entity--a process which was fortunately relatively painless.&lt;br /&gt;&lt;br /&gt;In Singapore, it seems fairly straightforward to get one's business registered, at least compared to Tokyo and the San Francisco Bay Area. The fees are comparatively lower as well.&lt;br /&gt;&lt;br /&gt;First, one surfs over to the ACRA website at http://www.acra.gov.sg&lt;br /&gt;The Accounting and Corporate Regulatory Authority of Singapore seems pretty new-business-friendly and has set it up such that most procedures can be done online. &lt;br /&gt;&lt;br /&gt;Figuring out what to do exactly, however, can be non-trivial depending on the type of business entity one is registering. For example, sole proprietorships and limited partnerships are relatively simple. A corporation, or what is known as a private limited company, involves more brain cells.&lt;br /&gt;&lt;br /&gt;Interesting (to me) distinctions are made between a "business"(sole proprietorship / partnership) and a "company"; full details can be found in the &lt;a href="http://statutes.agc.gov.sg/non_version/cgi-bin/cgi_retrieve.pl?actno=REVED-50&amp;amp;doctitle=COMPANIES%20ACT%0a&amp;amp;date=latest&amp;amp;method=part&amp;amp;sl=1"&gt;Companies' Act&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Plunify falls under a private limited company because, among other things, we would like to register property and capital assets required for our business in Plunify's name. After making sure that we satisfy the &lt;a href="http://www.acra.gov.sg/Services/Company/Local_Company/Incorporating_a_Local_Company.htm"&gt;eligibility requirements&lt;/a&gt;, we then made the decision to let a specialist vendor handle the incorporation for us. That involves things like setting up bank accounts, hiring a corporate secretary to file our annual accounts with the regulatory bodies and putting into writing things like share ownership and who gets to take the office chairs home if the business folds. Our vendor? Just google something like "incorporation services singapore" and there will be tons of relevant hits. We just called each one in turn and decided on one which felt the most comfy. Cost and professionalism were our deciding factors. The government also provides one called &lt;a href="http://www.dpbureau.sg/"&gt;The DP Bureau&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Little details, but essential to get the business going. Of course one can do it without enlisting any help. For us, it was a matter of asking that same old question, "Is our time worth the amount we're paying the vendor?" again.&lt;br /&gt;&lt;br /&gt;Harnhua&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-3491454536596350518?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/3491454536596350518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2009/09/incorporating-in-singapore.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/3491454536596350518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/3491454536596350518'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2009/09/incorporating-in-singapore.html' title='Incorporating in Singapore'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-4062342316705782807</id><published>2009-08-26T17:06:00.000-07:00</published><updated>2011-08-18T02:47:37.470-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='product planning'/><category scheme='http://www.blogger.com/atom/ns#' term='Coding'/><title type='text'>Learning by doing</title><content type='html'>The past month was a very satisfying one in term of workflow. Finally we've managed to devote more time in terms of full days (and nights) to Plunify. Finally many other commitments have been fulfilled, freeing up precious time.&lt;br /&gt;&lt;br /&gt;This post is a bit fuzzy in that I just wanted to summarize a few things we've reflected upon in the last few weeks:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Nudging the flywheel&lt;/b&gt;&lt;br /&gt;Jim Collins in his wonderful book, Good to Great, mentions the importance of working incessantly on little things that make up one's overall goal. Eventually (hopefully) every little ounce of preparation builds up enough momentum to propel your startup/organization forward.&lt;br /&gt;I feel that this train of thought is not just about leaving no stone unturned but also about gauging the relevance of tasks that we are working on. It sounds obvious, but before doing most things, we've come to ask why we're doing them and how they can help our overall goals. For example, building a business relationship with distributor X to sell FPGA design guides or writing a script to automate file transfers across servers. Since time for a startup is precious(gotta make $ before the $ runs out!), we really have to evaluate what we do.&lt;br /&gt;Interestingly once such questions are asked, we usually get a gut feeling of what's "right" and "wrong". And it really helps focus us on the "right" tasks, not to mention deepens the sense of satisfaction when such tasks are completed.&lt;br /&gt;Of course no one can predict the implications of every task. Discussing it within the team and with outsiders should help determine its relevance in the overall scheme of things. If it seems right after a good night's sleep, just do it and add momentum to your flywheel. Plunify's is only just starting feel its molecules stirring.&lt;br /&gt;Sometimes the Wheel weaves as the Wheel wills ;)&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Learning by doing&lt;/b&gt;&lt;br /&gt;While getting from Step 1 to Step 2, inevitably Steps 1.001, 1.002 pop up in-between. Whether it is inadequate planning or just the way things are at the beginning, I don't know. But it certainly spices up the day! We could be coding a feature to remotely access a server and suddenly find that the PHP library we're using requires some tweaking. That tweaking might lead to more Googling which in turn causes us to download a compiler to re-compile changes to the PHP library.&lt;br /&gt;The point is, we'd have never realized the existence of these extra steps without getting our feet wet. So to anyone who might be hesitant about venturing out on a limb: just take the first couple of steps and you'll find out the potential of your idea, quicker than most forms of advance planning and forecasting.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Engineers without borders&lt;/b&gt;&lt;br /&gt;Working with people over the world automatically broadens one's perspective. From the start, we wanted Plunify to support multiple languages and to sell to customers. Hence every webpage has to have a corresponding Chinese or Japanese version. It's been fun asking friends if they are interested in translating pages for us. Does anyone know how to properly translate, "FPGAs are the predominant devices used in Programmable Logic Design today" into Chinese or Japanese for us? :)&lt;br /&gt;The energy of the FPGA community is also nothing short of amazing. For example, no matter where we ask, people always have comments and ideas on how FPGAs can be made simpler for users. A potential board member could be emailing us from Indonesia while we're Skype-ing with an advisor in Japan. Is this the power of the "community" that people always talk about?&lt;br /&gt;&lt;br /&gt;Harnhua&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-4062342316705782807?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/4062342316705782807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2009/08/learning-by-doing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4062342316705782807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4062342316705782807'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2009/08/learning-by-doing.html' title='Learning by doing'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-4308078599268956479</id><published>2009-07-15T02:23:00.000-07:00</published><updated>2011-08-18T02:47:15.850-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='product planning'/><category scheme='http://www.blogger.com/atom/ns#' term='Business planning'/><title type='text'>"F words"</title><content type='html'>Much of what we're occupied with recently can be summarized by a few 'F' words, although not the ones that one might imagine ;) This phase of Plunify's progress might be termed the "sweat-and-blood" phase or simply, Product Development.&lt;br /&gt;&lt;br /&gt;By the way, serendipitously, another 'F'--a Facebook widget was installed on our landing page &lt;a href="http://www.plunify.com/"&gt;www.plunify.com&lt;/a&gt; in a bid to engage users. Do check us out!&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Features&lt;/b&gt;: Going through the list of things to do in order to start an FPGA/CPLD design, and coding them one by one into Plunify.&lt;br /&gt;&lt;b&gt;Feedback&lt;/b&gt;: Asking friends to try them out and then give us honest comments. Repeat.&lt;br /&gt;&lt;b&gt;FPGAs&lt;/b&gt;: Constantly thinking about Plunify's raison d'e^tre--making FPGAs/CPLDs/any type of PLD easier to use.&lt;br /&gt;&lt;b&gt;Funding&lt;/b&gt;: Cash flow and cash burn rate are always at the back of our minds, prompting the questions, "Can we get more funding?", "What milestone should we reach before applying for more?", "Who are the good incubators/investors out there?" etc.&lt;br /&gt;&lt;br /&gt;First, the &lt;b&gt;Feature&lt;/b&gt; we've been working on the past month is a reference design/board search function. It directly relates to one of the first steps taken when starting an FPGA project--look for an existing working example.&lt;br /&gt;Targeted at both basic and experienced users, you can either type in keywords, for example "USB", into a typical search textbox or use an Advanced Search page to methodically check the board interfaces or reference design capabilities that you want.&lt;br /&gt;Once you find what you want, intuitively one would wonder--how much of the FPGA's/CPLD's resources does this design consume?&lt;br /&gt;Clicking on the search result, if we have data for it, you should see:&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_9wZsv4HY9h0/Sl2hglynn9I/AAAAAAAAABw/ItbbfzjV3-4/s1600-h/refdesign_1.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5358616712913067986" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/Sl2hglynn9I/AAAAAAAAABw/ItbbfzjV3-4/s320/refdesign_1.jpg" style="cursor: hand; cursor: pointer; display: block; height: 200px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;The yummy-looking cookies show a breakdown of the main resources consumed: logic elements, storage elements and IO. To the right, one can compare this design with others in the same set of search results.&lt;br /&gt;Clicking on "Top 5 Results Comparisons" brings up:&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_9wZsv4HY9h0/Sl2iROJgaoI/AAAAAAAAAB4/BCyHhSxw6mQ/s1600-h/refdesign_compare.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5358617548380203650" src="http://4.bp.blogspot.com/_9wZsv4HY9h0/Sl2iROJgaoI/AAAAAAAAAB4/BCyHhSxw6mQ/s320/refdesign_compare.jpg" style="cursor: hand; cursor: pointer; display: block; height: 250px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;And we're working on user-specified, targeted comparisons.&lt;br /&gt;For the gory details, the Details tab also provides something like this:&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_9wZsv4HY9h0/Sl2iqig-MKI/AAAAAAAAACA/WWt5B90Zs3w/s1600-h/refdesign_details.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5358617983344062626" src="http://4.bp.blogspot.com/_9wZsv4HY9h0/Sl2iqig-MKI/AAAAAAAAACA/WWt5B90Zs3w/s320/refdesign_details.jpg" style="cursor: hand; cursor: pointer; display: block; height: 272px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;Our data? Mainly reference designs and development kit information from Xilinx and Altera at the moment, but we aim to include as many reference designs as possible--from other FPGA vendors, distributors, design houses and individuals. For instance, a contributor on OpenCores.org can also list his/her design on Plunify. &lt;a href="mailto:plunify@gmail.com"&gt;Contact us&lt;/a&gt; if you'd like to post your design.&lt;br /&gt;&lt;br /&gt;A reference design will not fly with users if it is not verified in hardware/simulation, has little/no documentation. Support is also vital, especially for complicated designs or if documentation is not sufficient to reproduce the promised behavior. Therefore, for each design in Plunify, we inform you if the design has been verified or not, what you need to reproduce the results, and how much it is likely to cost you to obtain all the necessary pieces.&lt;br /&gt;&lt;br /&gt;Gathering and entering the required data is an interesting and tedious task. Different vendors convey information in different formats/locations so sometimes it is difficult to sieve out the required bits. Oh, how I long for a "Reference design crawler"&lt;br /&gt;(*scribbles on Todo list*) But when a user mentions that this feature is helpful, my my, the satisfaction is indescribable.&lt;br /&gt;&lt;br /&gt;That brings us to &lt;b&gt;Feedback&lt;/b&gt;.&lt;br /&gt;After every alpha feature release, we have been asking friends from all over--the Valley, China, Japan to try it out and to critique. The Search feature is no exception. Since we also made changes to Plunify's website, Sean, Mary, Henry and 小澤さん were kind enough to comment on the entire site in general. I cannot tell you how helpful their feedback has been. Besides directly influencing what we do and&lt;br /&gt;helping us improve, psychologically it motivates us to try harder to please. Simple as it sounds, user feedback are really the bee's knees.&lt;br /&gt;&lt;br /&gt;The other two Fs: &lt;b&gt;FPGAs&lt;/b&gt; and &lt;b&gt;Funding&lt;/b&gt;&lt;br /&gt;小澤さん and Henry raised some points about where Plunify is going, for example, how are users going to trust a company in its infancy like Plunify and will listing reference designs conflict with Plunify's goal of unbiased, transparent use of FPGA/CPLD/PLDs. Very good food for thought, and amidst much discussion, we realized that what we're doing is very much in line with the mission of Simplifying Programmable Logic Design. Again an obvious statement perhaps, but as long as we stay true to our mission and provide value, users will come to trust us. FPGAs can be sexy.&lt;br /&gt;&lt;br /&gt;We got very curious about the &lt;a href="http://aws.amazon.com/startupchallenge/"&gt;Amazon AWS Startup Challenge&lt;/a&gt; and have been watching finalists' videos. Unfortunately the current round of applications requires Plunify to be registered in either the US, the UK, Germany or Israel. Being optimists, we'll try anyway ;)&lt;br /&gt;&lt;br /&gt;Alright, back to work on the next feature...&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_9wZsv4HY9h0/Sl2i5WlLO6I/AAAAAAAAACI/7gTKpcZHrU4/s1600-h/refdesign_launchsimu.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5358618237838506914" src="http://4.bp.blogspot.com/_9wZsv4HY9h0/Sl2i5WlLO6I/AAAAAAAAACI/7gTKpcZHrU4/s320/refdesign_launchsimu.jpg" style="cursor: hand; cursor: pointer; display: block; height: 74px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;Thanks for reading and have a good one!&lt;br /&gt;&lt;br /&gt;Harnhua&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-4308078599268956479?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/4308078599268956479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2009/07/f-words.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4308078599268956479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/4308078599268956479'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2009/07/f-words.html' title='&quot;F words&quot;'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_9wZsv4HY9h0/Sl2hglynn9I/AAAAAAAAABw/ItbbfzjV3-4/s72-c/refdesign_1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-7330445380700798393</id><published>2009-06-14T19:54:00.000-07:00</published><updated>2011-08-18T02:46:55.335-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='reference design'/><category scheme='http://www.blogger.com/atom/ns#' term='FPGA'/><category scheme='http://www.blogger.com/atom/ns#' term='search'/><title type='text'>Find a suitable reference design</title><content type='html'>One of the first things many programmable logic developers do at the start of a project is to find a reference design--something containing most of what the final product would have, and more importantly, something that is proven to work.&lt;br /&gt;&lt;br /&gt;This is akin to the modular design concept of not reinventing the wheel and building on an existing, working example. Important questions to ask might be:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Does this design contain all the interfaces I need?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Has it been tested in hardware and/or in simulation?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;How much does it cost?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;What do I need to test it (verify that it works as promised) e.g. additional software, hardware components?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Where/How do I obtain those extra components?&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;With the above in mind, we implemented a "Reference Design Search" to see if it can help our users.&lt;br /&gt;Do have a look at the &lt;a href="http://www.facebook.com/home.php#/pages/Singapore/Plunify/91188649764?ref=nf"&gt;preliminary screenshots&lt;/a&gt; (on our Facebook page or the thumbnails below).&lt;br /&gt;Happily, George, who sparked the idea in the first place, seems to like what he sees so far.&lt;br /&gt;&lt;br /&gt;The flow is as follows:&lt;br /&gt;First, the landing search page:&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_9wZsv4HY9h0/SjW7SR283-I/AAAAAAAAABQ/6wcK2LSEDwk/s1600-h/search_landing.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5347386055278256098" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/SjW7SR283-I/AAAAAAAAABQ/6wcK2LSEDwk/s320/search_landing.jpg" style="cursor: pointer; display: block; height: 146px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;Enter something that you'd like to implement e.g. "embedded system USB"&lt;br /&gt;&lt;br /&gt;Then, have a look at the initial results:&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_9wZsv4HY9h0/SjW8e0bMOYI/AAAAAAAAABY/z-3Jv2qxQVc/s1600-h/search_results_1.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5347387370227120514" src="http://3.bp.blogspot.com/_9wZsv4HY9h0/SjW8e0bMOYI/AAAAAAAAABY/z-3Jv2qxQVc/s320/search_results_1.jpg" style="cursor: pointer; display: block; height: 198px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;... shows how many reference designs and boards loosely match your search keywords.&lt;br /&gt;&lt;br /&gt;Next, find out more about the designs and boards:&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_9wZsv4HY9h0/SjW9AbgI19I/AAAAAAAAABg/tsEEoNyksEA/s1600-h/search_results_2.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5347387947652536274" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/SjW9AbgI19I/AAAAAAAAABg/tsEEoNyksEA/s320/search_results_2.jpg" style="cursor: pointer; display: block; height: 218px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;We'll be adding columns like Price and User Ratings soon, as well as information on all PLD vendors, not just the one you see in the screenshot.&lt;br /&gt;&lt;br /&gt;Want to be more specific? Then try the advanced search, which we are still tweaking:&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_9wZsv4HY9h0/SjW_guFHMwI/AAAAAAAAABo/yhWSJZTcdw4/s1600-h/adv_search.jpg"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5347390701418525442" src="http://1.bp.blogspot.com/_9wZsv4HY9h0/SjW_guFHMwI/AAAAAAAAABo/yhWSJZTcdw4/s320/adv_search.jpg" style="cursor: pointer; display: block; height: 198px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;"Must have" and "Maybe" are the options presented for each feature, while a few guesses are made about the user's preferences. Those guesses are really the fun and difficult parts of this search feature--Kirvy is spending many hours on it to come up with something good.&lt;br /&gt;&lt;br /&gt;Please let us know what you think, especially with regards to what aspects of a reference design you would like to know about, before choosing one.&lt;br /&gt;&lt;br /&gt;Essentially, the most rewarding result of this feature would be helping a developer find good working examples.&lt;br /&gt;&lt;br /&gt;Harnhua&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-7330445380700798393?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/7330445380700798393/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2009/06/find-suitable-reference-design.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/7330445380700798393'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/7330445380700798393'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2009/06/find-suitable-reference-design.html' title='Find a suitable reference design'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_9wZsv4HY9h0/SjW7SR283-I/AAAAAAAAABQ/6wcK2LSEDwk/s72-c/search_landing.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-3778221492731863235</id><published>2009-06-14T18:43:00.000-07:00</published><updated>2011-08-18T02:46:28.866-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Seed funding'/><category scheme='http://www.blogger.com/atom/ns#' term='pitching'/><category scheme='http://www.blogger.com/atom/ns#' term='venture capital'/><title type='text'>Getting the moolah</title><content type='html'>Finding money to fund one's endeavor--a topic close to entrepreneurs' hearts and blogged about almost incessantly. This is our experience, and please tell us about yours.&lt;br /&gt;&lt;br /&gt;Fortunately, we have enough savings to bootstrap; which is not to say that we don't need extra investment, or that we didn't have to slash features to arrive at a realistic "can-launch" plan.&lt;br /&gt;&lt;br /&gt;Knowing full well that we're still seed-stage, and that logically seed-stage companies normally don't attract many investors, plus being apprehensive of giving away too much equity at this point, we targeted the following, in descending order of priority:&lt;br /&gt;- Government-type no-strings-attached grants: If they like us, they'll fund us; very few questions asked. Problem is, "like" is loosely-defined and infinitely-opaque here.&lt;br /&gt;- Angel funding: Hallelujah!&lt;br /&gt;- VCs: Epitome of the business world--no customers, no money. Well, that's a silly assertion I suppose, like saying fish don't swim without water.&lt;br /&gt;&lt;br /&gt;Singapore has many initiatives to provide funding through government agencies. There has been a lot said about the pitfalls of such funding: lengthy, opaque application process (typical picture of government bureaucracy), non-consistent decision-making by non-committal stake-holders (mostly panelists from industry who aren't really responsible for the $$ they dish out), etc. &lt;a href="http://www.paulgraham.com/articles.html"&gt;Paul Graham&lt;/a&gt; wrote several insightful articles on the topic, as have many bloggers. &lt;a href="http://www.blogger.com/www.thefunded.com"&gt;TheFunded.com&lt;/a&gt; also covers many aspects of funding in general.&lt;br /&gt;&lt;br /&gt;The first one we applied for was &lt;a href="http://www.spring.gov.sg/tecs"&gt;TECS&lt;/a&gt;. Spring Singapore provides a variety of schemes to finance budding entrepreneurs. We didn't get the money, and didn't particularly enjoy the whole experience because:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;We waited 6 months for the entire process: application, business plan, presentation. Thankfully, the results were announced quickly.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;There was little transparency--our questions to people other than the facilitators were never answered, although we, being the sellers, were naturally very responsive.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;There was _no_ feedback on why we didn't make the cut.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Perhaps if we had gotten the money, I won't be complaining that much ; )&lt;br /&gt;Now we understand why things are the way they are at Spring Singapore, and we sincerely hope for improvements.&lt;br /&gt;&lt;br /&gt;On the bright side of things, the process itself was great, because:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;It really helped us put our business plan together, especially the balance sheet forecast and the costs breakdown.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Nothing beats the real-world experience of pitching, albeit to the government. Wearing a suit in Singapore is a killer replacement for hot yoga.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Now we can share some good information with fellow entrepreneurs.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Would we apply again? Of course! One rejection motivates us even more, so watch this space : )&lt;br /&gt;Good luck to all funding-seekers out there! We'd love to hear from you.&lt;br /&gt;&lt;br /&gt;Harnhua&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-3778221492731863235?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/3778221492731863235/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2009/06/getting-moolah.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/3778221492731863235'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/3778221492731863235'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2009/06/getting-moolah.html' title='Getting the moolah'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-967271957585995849.post-8495429754642323454</id><published>2009-05-10T08:40:00.000-07:00</published><updated>2011-08-04T19:31:42.271-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='A new beginning'/><category scheme='http://www.blogger.com/atom/ns#' term='simplify programmable logic design'/><title type='text'>Origins</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;A journey of a thousand miles begins with a single step.&lt;br /&gt;千里之行，始於足下。&lt;br /&gt;千里の道も一歩より。&lt;br /&gt;&lt;br /&gt;And so we set out to make Plunify a real product that can hopefully make a difference in the world of Programmable Logic Design.&lt;br /&gt;&lt;br /&gt;Plunify's origins can't quite be traced back precisely to those chats that Kirvy and I had in the onsen in 2008. Nor do they really date from the discussions with George, Sean and Mary in 2007. And probably not solely from when we started to hear complaints from web and FPGA users.&lt;br /&gt;&lt;br /&gt;Thinking about it, I believe Plunify was born of hope, frustration and inspiration experienced by generations of pioneers--the brilliant people who invented the technology that we use to create Plunify today. We stand on the shoulders of giants and we'll do our best not to let you down.&lt;br /&gt;&lt;br /&gt;Kirvy, Harnhua&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/967271957585995849-8495429754642323454?l=plunify.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://plunify.blogspot.com/feeds/8495429754642323454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://plunify.blogspot.com/2009/05/origins.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/8495429754642323454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/967271957585995849/posts/default/8495429754642323454'/><link rel='alternate' type='text/html' href='http://plunify.blogspot.com/2009/05/origins.html' title='Origins'/><author><name>Plunified!</name><uri>http://www.blogger.com/profile/12657745396659457816</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/-5-L2k0w9Xq4/Th_4GsTpWDI/AAAAAAAAAI8/sxlr0AM6E4w/s220/blog_logo.png'/></author><thr:total>0</thr:total></entry></feed>
