It does seem like the basic definition of IP as a building block is the big problem. This locks you in to a bottom up approach. We need a "compiler" that can pull from the "library" of building block components and customize then as required to meet the high level requirements (speed, power, latency, etc). The tool would search thru the solution space to find a particular combination that fits the requirements (or comes back with a 'no solution' result). That's the direction I'd like to see things move...
In that case, please check us out, Space Codesign. We have the capability of going to implementation after algorithm design and validation, and architecture design exploration. Implementation can either map to libraries (e.g., Xilinx for FPGA) or to HLS (high level synthesis - Forte, Calypto, Xilinx, etc.) after design exploration figures out meeting your requirements.
By the way, Guy Bois, our president has a new blog article on this site discussing our approach.
Drones are, in essence, flying autonomous vehicles. Pros and cons surrounding drones today might well foreshadow the debate over the development of self-driving cars. In the context of a strongly regulated aviation industry, "self-flying" drones pose a fresh challenge. How safe is it to fly drones in different environments? Should drones be required for visual line of sight – as are piloted airplanes? Join EE Times' Junko Yoshida as she moderates a panel of drone experts.