在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
楼主: luoshuiqingfeng

[开源介绍] OpenROAD:一个自驱动,开源的数字版图生成工具链

[复制链接]
发表于 2023-4-6 10:35:55 | 显示全部楼层
直接编译github上的source,有几个地方过不去,因为我的环境与docker不同。另外codespace好像编译不过去,与codespace的环境有关。
发表于 2023-4-6 16:04:00 | 显示全部楼层
没看到如何运行的几个命令.
root@b5ed7fa80fe2:/opt/or-tools# tree -L 2
.
|-- Makefile
|-- README.md
|-- bin
|   |-- fzn-ortools
|   |-- protoc -> protoc-3.21.5.0
|   |-- protoc-3.21.5.0
|   `-- scip
|-- build
|-- examples
|   |-- assignment_groups_mip
|   |-- assignment_groups_sat
|   |-- assignment_linear_sum_assignment
|   |-- assignment_min_flow
|   |-- assignment_mip
|   |-- assignment_sat
|   |-- assignment_task_sizes_mip
|   |-- assignment_task_sizes_sat
|   |-- assignment_teams_mip
|   |-- assignment_teams_sat
|   |-- assumptions_sample_sat
|   |-- balance_min_flow
|   |-- basic_example
|   |-- basic_example_mo
|   |-- bin_packing_mip
|   |-- binpacking_2d_sat
|   |-- binpacking_problem_sat
|   |-- bool_or_sample_sat
|   |-- channeling_sample_sat
|   |-- cocktail_hour_mo
|   |-- constraint_programming_cp
|   |-- copy_model_sample_sat
|   |-- costas_array_sat
|   |-- course_scheduling
|   |-- course_scheduling_run
|   |-- cp_is_fun_cp
|   |-- cp_is_fun_sat
|   |-- cp_sat_example
|   |-- cryptarithm_sat
|   |-- cutting_stock_mo
|   |-- cvrp_disjoint_tw
|   |-- cvrptw
|   |-- cvrptw_soft_capacity
|   |-- cvrptw_with_breaks
|   |-- cvrptw_with_precedences
|   |-- cvrptw_with_refueling
|   |-- cvrptw_with_resources
|   |-- cvrptw_with_stop_times_and_resources
|   |-- cvrptw_with_time_dependent_costs
|   |-- dimacs_assignment
|   |-- dobble_ls
|   |-- earliness_tardiness_cost_sample_sat
|   |-- facility_lp_benders_mo
|   |-- flow_api
|   |-- frequency_assignment_problem
|   |-- golomb_sat
|   |-- integer_programming
|   |-- integer_programming_example
|   |-- integer_programming_mo
|   |-- interval_sample_sat
|   |-- jobshop_sat
|   |-- knapsack
|   |-- knapsack_2d_sat
|   |-- lagrangian_relaxation_mo
|   |-- linear_assignment_api
|   |-- linear_programming
|   |-- linear_programming_example
|   |-- linear_programming_mo
|   |-- linear_solver_protocol_buffers
|   |-- literal_sample_sat
|   |-- magic_sequence_sat
|   |-- magic_square_sat
|   |-- max_flow
|   |-- min_cost_flow
|   |-- minimal_jobshop_cp
|   |-- minimal_jobshop_sat
|   |-- mip_var_array
|   |-- mps_driver
|   |-- multi_knapsack_sat
|   |-- multiple_knapsack_mip
|   |-- multiple_knapsack_sat
|   |-- network_routing_sat
|   |-- no_overlap_sample_sat
|   |-- non_linear_sat
|   |-- nqueens
|   |-- nqueens_cp
|   |-- nqueens_sat
|   |-- nurses_cp
|   |-- nurses_sat
|   |-- optional_interval_sample_sat
|   |-- pdlp_solve
|   |-- pdptw
|   |-- qap_sat
|   |-- rabbits_and_pheasants_cp
|   |-- rabbits_and_pheasants_sat
|   |-- random_tsp
|   |-- ranking_sample_sat
|   |-- reified_sample_sat
|   |-- sat_runner
|   |-- schedule_requests_sat
|   |-- search_for_all_solutions_sample_sat
|   |-- shift_minimization_sat
|   |-- simple_cp_program
|   |-- simple_glop_program
|   |-- simple_knapsack_program
|   |-- simple_lp_program
|   |-- simple_ls_program
|   |-- simple_max_flow_program
|   |-- simple_min_cost_flow_program
|   |-- simple_mip_program
|   |-- simple_pdlp_program
|   |-- simple_routing_program
|   |-- simple_sat_program
|   |-- slitherlink_sat
|   |-- solution_hinting_sample_sat
|   |-- solve
|   |-- solve_and_print_intermediate_solutions_sample_sat
|   |-- solve_with_time_limit_sample_sat
|   |-- sports_scheduling_sat
|   |-- step_function_sample_sat
|   |-- stigler_diet
|   |-- stop_after_n_solutions_sample_sat
|   |-- strawberry_fields_with_column_generation
|   |-- tsp
|   |-- tsp_circuit_board
|   |-- tsp_cities
|   |-- tsp_cities_routes
|   |-- tsp_distance_matrix
|   |-- tsp_mo
|   |-- uncapacitated_facility_location
|   |-- variable_intervals_sat
|   |-- vector_bin_packing_solver
|   |-- vrp
|   |-- vrp_breaks
|   |-- vrp_capacity
|   |-- vrp_drop_nodes
|   |-- vrp_global_span
|   |-- vrp_initial_routes
|   |-- vrp_pickup_delivery
|   |-- vrp_pickup_delivery_fifo
|   |-- vrp_pickup_delivery_lifo
|   |-- vrp_resources
|   |-- vrp_routes
|   |-- vrp_solution_callback
|   |-- vrp_starts_ends
|   |-- vrp_time_windows
|   |-- vrp_with_time_limit
|   |-- vrptw_store_solution_data
|   `-- weighted_tardiness_sat
|-- include
|   |-- absl
|   |-- blockmemshell
|   |-- coin
|   |-- dijkstra
|   |-- eigen3
|   |-- google
|   |-- lpi
|   |-- objscip
|   |-- ortools
|   |-- ortools_export.h
|   |-- re2
|   |-- scip
|   |-- symmetry
|   |-- tclique
|   |-- tinycthread
|   |-- tpi
|   |-- xml
|   |-- zconf.h
|   `-- zlib.h
|-- lib
|   |-- cmake
|   |-- libCbc.a
|   |-- libCbcSolver.a
|   |-- libCgl.a
|   |-- libClp.a
|   |-- libClpSolver.a
|   |-- libCoinUtils.a
|   |-- libOsi.a
|   |-- libOsiCbc.a
|   |-- libOsiClp.a
|   |-- libabsl_bad_any_cast_impl.a
|   |-- libabsl_bad_optional_access.a
|   |-- libabsl_bad_variant_access.a
|   |-- libabsl_base.a
|   |-- libabsl_city.a
|   |-- libabsl_civil_time.a
|   |-- libabsl_cord.a
|   |-- libabsl_cord_internal.a
|   |-- libabsl_cordz_functions.a
|   |-- libabsl_cordz_handle.a
|   |-- libabsl_cordz_info.a
|   |-- libabsl_cordz_sample_token.a
|   |-- libabsl_debugging_internal.a
|   |-- libabsl_demangle_internal.a
|   |-- libabsl_examine_stack.a
|   |-- libabsl_exponential_biased.a
|   |-- libabsl_failure_signal_handler.a
|   |-- libabsl_flags.a
|   |-- libabsl_flags_commandlineflag.a
|   |-- libabsl_flags_commandlineflag_internal.a
|   |-- libabsl_flags_config.a
|   |-- libabsl_flags_internal.a
|   |-- libabsl_flags_marshalling.a
|   |-- libabsl_flags_parse.a
|   |-- libabsl_flags_private_handle_accessor.a
|   |-- libabsl_flags_program_name.a
|   |-- libabsl_flags_reflection.a
|   |-- libabsl_flags_usage.a
|   |-- libabsl_flags_usage_internal.a
|   |-- libabsl_graphcycles_internal.a
|   |-- libabsl_hash.a
|   |-- libabsl_hashtablez_sampler.a
|   |-- libabsl_int128.a
|   |-- libabsl_leak_check.a
|   |-- libabsl_log_severity.a
|   |-- libabsl_low_level_hash.a
|   |-- libabsl_malloc_internal.a
|   |-- libabsl_periodic_sampler.a
|   |-- libabsl_random_distributions.a
|   |-- libabsl_random_internal_distribution_test_util.a
|   |-- libabsl_random_internal_platform.a
|   |-- libabsl_random_internal_pool_urbg.a
|   |-- libabsl_random_internal_randen.a
|   |-- libabsl_random_internal_randen_hwaes.a
|   |-- libabsl_random_internal_randen_hwaes_impl.a
|   |-- libabsl_random_internal_randen_slow.a
|   |-- libabsl_random_internal_seed_material.a
|   |-- libabsl_random_seed_gen_exception.a
|   |-- libabsl_random_seed_sequences.a
|   |-- libabsl_raw_hash_set.a
|   |-- libabsl_raw_logging_internal.a
|   |-- libabsl_scoped_set_env.a
|   |-- libabsl_spinlock_wait.a
|   |-- libabsl_stacktrace.a
|   |-- libabsl_status.a
|   |-- libabsl_statusor.a
|   |-- libabsl_str_format_internal.a
|   |-- libabsl_strerror.a
|   |-- libabsl_strings.a
|   |-- libabsl_strings_internal.a
|   |-- libabsl_symbolize.a
|   |-- libabsl_synchronization.a
|   |-- libabsl_throw_delegate.a
|   |-- libabsl_time.a
|   |-- libabsl_time_zone.a
|   |-- libortools.so -> libortools.so.9
|   |-- libortools.so.9 -> libortools.so.9.5.2237
|   |-- libortools.so.9.5.2237
|   |-- libortools_flatzinc.so -> libortools_flatzinc.so.9
|   |-- libortools_flatzinc.so.9 -> libortools_flatzinc.so.9.5.2237
|   |-- libortools_flatzinc.so.9.5.2237
|   |-- libprotobuf-lite.a
|   |-- libprotobuf.a
|   |-- libprotoc.a
|   |-- libre2.a
|   |-- libscip.a
|   |-- libz.a
|   `-- pkgconfig
`-- share
    |-- doc
    |-- eigen3
    |-- man
    |-- minizinc
    `-- pkgconfig

168 directories, 95 files
发表于 2023-4-6 16:04:52 | 显示全部楼层
这是测试的结果,没看到命令

root@b5ed7fa80fe2:/opt/or-tools# tree -L 2
.
|-- Makefile
|-- README.md
|-- bin
|   |-- fzn-ortools
|   |-- protoc -> protoc-3.21.5.0
|   |-- protoc-3.21.5.0
|   `-- scip
|-- build
|-- examples
|   |-- assignment_groups_mip
|   |-- assignment_groups_sat
|   |-- assignment_linear_sum_assignment
|   |-- assignment_min_flow
|   |-- assignment_mip
|   |-- assignment_sat
|   |-- assignment_task_sizes_mip
|   |-- assignment_task_sizes_sat
|   |-- assignment_teams_mip
|   |-- assignment_teams_sat
|   |-- assumptions_sample_sat
|   |-- balance_min_flow
|   |-- basic_example
|   |-- basic_example_mo
|   |-- bin_packing_mip
|   |-- binpacking_2d_sat
|   |-- binpacking_problem_sat
|   |-- bool_or_sample_sat
|   |-- channeling_sample_sat
|   |-- cocktail_hour_mo
|   |-- constraint_programming_cp
|   |-- copy_model_sample_sat
|   |-- costas_array_sat
|   |-- course_scheduling
|   |-- course_scheduling_run
|   |-- cp_is_fun_cp
|   |-- cp_is_fun_sat
|   |-- cp_sat_example
|   |-- cryptarithm_sat
|   |-- cutting_stock_mo
|   |-- cvrp_disjoint_tw
|   |-- cvrptw
|   |-- cvrptw_soft_capacity
|   |-- cvrptw_with_breaks
|   |-- cvrptw_with_precedences
|   |-- cvrptw_with_refueling
|   |-- cvrptw_with_resources
|   |-- cvrptw_with_stop_times_and_resources
|   |-- cvrptw_with_time_dependent_costs
|   |-- dimacs_assignment
|   |-- dobble_ls
|   |-- earliness_tardiness_cost_sample_sat
|   |-- facility_lp_benders_mo
|   |-- flow_api
|   |-- frequency_assignment_problem
|   |-- golomb_sat
|   |-- integer_programming
|   |-- integer_programming_example
|   |-- integer_programming_mo
|   |-- interval_sample_sat
|   |-- jobshop_sat
|   |-- knapsack
|   |-- knapsack_2d_sat
|   |-- lagrangian_relaxation_mo
|   |-- linear_assignment_api
|   |-- linear_programming
|   |-- linear_programming_example
|   |-- linear_programming_mo
|   |-- linear_solver_protocol_buffers
|   |-- literal_sample_sat
|   |-- magic_sequence_sat
|   |-- magic_square_sat
|   |-- max_flow
|   |-- min_cost_flow
|   |-- minimal_jobshop_cp
|   |-- minimal_jobshop_sat
|   |-- mip_var_array
|   |-- mps_driver
|   |-- multi_knapsack_sat
|   |-- multiple_knapsack_mip
|   |-- multiple_knapsack_sat
|   |-- network_routing_sat
|   |-- no_overlap_sample_sat
|   |-- non_linear_sat
|   |-- nqueens
|   |-- nqueens_cp
|   |-- nqueens_sat
|   |-- nurses_cp
|   |-- nurses_sat
|   |-- optional_interval_sample_sat
|   |-- pdlp_solve
|   |-- pdptw
|   |-- qap_sat
|   |-- rabbits_and_pheasants_cp
|   |-- rabbits_and_pheasants_sat
|   |-- random_tsp
|   |-- ranking_sample_sat
|   |-- reified_sample_sat
|   |-- sat_runner
|   |-- schedule_requests_sat
|   |-- search_for_all_solutions_sample_sat
|   |-- shift_minimization_sat
|   |-- simple_cp_program
|   |-- simple_glop_program
|   |-- simple_knapsack_program
|   |-- simple_lp_program
|   |-- simple_ls_program
|   |-- simple_max_flow_program
|   |-- simple_min_cost_flow_program
|   |-- simple_mip_program
|   |-- simple_pdlp_program
|   |-- simple_routing_program
|   |-- simple_sat_program
|   |-- slitherlink_sat
|   |-- solution_hinting_sample_sat
|   |-- solve
|   |-- solve_and_print_intermediate_solutions_sample_sat
|   |-- solve_with_time_limit_sample_sat
|   |-- sports_scheduling_sat
|   |-- step_function_sample_sat
|   |-- stigler_diet
|   |-- stop_after_n_solutions_sample_sat
|   |-- strawberry_fields_with_column_generation
|   |-- tsp
|   |-- tsp_circuit_board
|   |-- tsp_cities
|   |-- tsp_cities_routes
|   |-- tsp_distance_matrix
|   |-- tsp_mo
|   |-- uncapacitated_facility_location
|   |-- variable_intervals_sat
|   |-- vector_bin_packing_solver
|   |-- vrp
|   |-- vrp_breaks
|   |-- vrp_capacity
|   |-- vrp_drop_nodes
|   |-- vrp_global_span
|   |-- vrp_initial_routes
|   |-- vrp_pickup_delivery
|   |-- vrp_pickup_delivery_fifo
|   |-- vrp_pickup_delivery_lifo
|   |-- vrp_resources
|   |-- vrp_routes
|   |-- vrp_solution_callback
|   |-- vrp_starts_ends
|   |-- vrp_time_windows
|   |-- vrp_with_time_limit
|   |-- vrptw_store_solution_data
|   `-- weighted_tardiness_sat
|-- include
|   |-- absl
|   |-- blockmemshell
|   |-- coin
|   |-- dijkstra
|   |-- eigen3
|   |-- google
|   |-- lpi
|   |-- objscip
|   |-- ortools
|   |-- ortools_export.h
|   |-- re2
|   |-- scip
|   |-- symmetry
|   |-- tclique
|   |-- tinycthread
|   |-- tpi
|   |-- xml
|   |-- zconf.h
|   `-- zlib.h
|-- lib
|   |-- cmake
|   |-- libCbc.a
|   |-- libCbcSolver.a
|   |-- libCgl.a
|   |-- libClp.a
|   |-- libClpSolver.a
|   |-- libCoinUtils.a
|   |-- libOsi.a
|   |-- libOsiCbc.a
|   |-- libOsiClp.a
|   |-- libabsl_bad_any_cast_impl.a
|   |-- libabsl_bad_optional_access.a
|   |-- libabsl_bad_variant_access.a
|   |-- libabsl_base.a
|   |-- libabsl_city.a
|   |-- libabsl_civil_time.a
|   |-- libabsl_cord.a
|   |-- libabsl_cord_internal.a
|   |-- libabsl_cordz_functions.a
|   |-- libabsl_cordz_handle.a
|   |-- libabsl_cordz_info.a
|   |-- libabsl_cordz_sample_token.a
|   |-- libabsl_debugging_internal.a
|   |-- libabsl_demangle_internal.a
|   |-- libabsl_examine_stack.a
|   |-- libabsl_exponential_biased.a
|   |-- libabsl_failure_signal_handler.a
|   |-- libabsl_flags.a
|   |-- libabsl_flags_commandlineflag.a
|   |-- libabsl_flags_commandlineflag_internal.a
|   |-- libabsl_flags_config.a
|   |-- libabsl_flags_internal.a
|   |-- libabsl_flags_marshalling.a
|   |-- libabsl_flags_parse.a
|   |-- libabsl_flags_private_handle_accessor.a
|   |-- libabsl_flags_program_name.a
|   |-- libabsl_flags_reflection.a
|   |-- libabsl_flags_usage.a
|   |-- libabsl_flags_usage_internal.a
|   |-- libabsl_graphcycles_internal.a
|   |-- libabsl_hash.a
|   |-- libabsl_hashtablez_sampler.a
|   |-- libabsl_int128.a
|   |-- libabsl_leak_check.a
|   |-- libabsl_log_severity.a
|   |-- libabsl_low_level_hash.a
|   |-- libabsl_malloc_internal.a
|   |-- libabsl_periodic_sampler.a
|   |-- libabsl_random_distributions.a
|   |-- libabsl_random_internal_distribution_test_util.a
|   |-- libabsl_random_internal_platform.a
|   |-- libabsl_random_internal_pool_urbg.a
|   |-- libabsl_random_internal_randen.a
|   |-- libabsl_random_internal_randen_hwaes.a
|   |-- libabsl_random_internal_randen_hwaes_impl.a
|   |-- libabsl_random_internal_randen_slow.a
|   |-- libabsl_random_internal_seed_material.a
|   |-- libabsl_random_seed_gen_exception.a
|   |-- libabsl_random_seed_sequences.a
|   |-- libabsl_raw_hash_set.a
|   |-- libabsl_raw_logging_internal.a
|   |-- libabsl_scoped_set_env.a
|   |-- libabsl_spinlock_wait.a
|   |-- libabsl_stacktrace.a
|   |-- libabsl_status.a
|   |-- libabsl_statusor.a
|   |-- libabsl_str_format_internal.a
|   |-- libabsl_strerror.a
|   |-- libabsl_strings.a
|   |-- libabsl_strings_internal.a
|   |-- libabsl_symbolize.a
|   |-- libabsl_synchronization.a
|   |-- libabsl_throw_delegate.a
|   |-- libabsl_time.a
|   |-- libabsl_time_zone.a
|   |-- libortools.so -> libortools.so.9
|   |-- libortools.so.9 -> libortools.so.9.5.2237
|   |-- libortools.so.9.5.2237
|   |-- libortools_flatzinc.so -> libortools_flatzinc.so.9
|   |-- libortools_flatzinc.so.9 -> libortools_flatzinc.so.9.5.2237
|   |-- libortools_flatzinc.so.9.5.2237
|   |-- libprotobuf-lite.a
|   |-- libprotobuf.a
|   |-- libprotoc.a
|   |-- libre2.a
|   |-- libscip.a
|   |-- libz.a
|   `-- pkgconfig
`-- share
    |-- doc
    |-- eigen3
    |-- man
    |-- minizinc
    `-- pkgconfig

168 directories, 95 files
1.png
发表于 2023-4-6 16:05:52 | 显示全部楼层
没看到可用的命令。github上的命令如下:
1.png
发表于 2023-4-6 16:06:58 | 显示全部楼层
对这个docker镜像的运行命令如下:

另外一个是运行make test的结果。感觉这个docker不太对。
2.png
3.png
发表于 2023-4-6 18:22:56 | 显示全部楼层


Newstyle 发表于 2023-4-6 16:06
对这个docker镜像的运行命令如下:

另外一个是运行make test的结果。感觉这个docker不太对。 ...


这个是主程序的docker, 真正用于芯片设计的是这两个项目 https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts  和 https://github.com/The-OpenROAD-Project/OpenLane,这两个项目也有对于的docker镜像但得用对版本否则无法生成gdsII文件。
发表于 2023-7-3 18:18:44 | 显示全部楼层


轩辕志瑜 发表于 2023-4-6 18:22
这个是主程序的docker, 真正用于芯片设计的是这两个项目 https://github.com/The-OpenROAD-Project/Open ...


下载一个innovus虚拟机不香吗,这工具离真正市场商用还差太远了
发表于 2023-7-3 19:42:50 | 显示全部楼层


sugus86 发表于 2023-7-3 18:18
下载一个innovus虚拟机不香吗,这工具离真正市场商用还差太远了


innovus虚拟机是不能用于商用只能用于学习,这个可以免费商用。
发表于 2023-7-20 19:50:58 | 显示全部楼层
谢谢分享
发表于 2023-8-12 22:26:07 | 显示全部楼层
谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-19 00:37 , Processed in 0.022915 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表